วิธีทำซ้ำหน้าหรือโพสต์ใน WordPress

เผยแพร่แล้ว: 2021-08-26

กำลังค้นหาวิธีทำซ้ำหน้า WordPress โพสต์ หรือเนื้อหาประเภทอื่นอยู่ใช่ไหม

ความสามารถในการทำซ้ำเนื้อหา WordPress ได้อย่างง่ายดายจะมีประโยชน์ในทุกสถานการณ์ ตั้งแต่การสร้างเนื้อหาที่คล้ายกันจำนวนมากไปจนถึงการอัปเดตเนื้อหาที่เก่ากว่า ไปจนถึงการปรับแต่งการออกแบบและอีกมากมาย

ในหลายกรณี มันเป็นมากกว่าแค่การคัดลอกและวางข้อความระหว่างหน้าต่างๆ นอกจากเนื้อหาที่คุณสร้างแล้ว คุณอาจต้องการรักษาการออกแบบและการตั้งค่าของโพสต์ เช่น หมวดหมู่ แท็ก ผู้เขียน ฟิลด์ที่กำหนดเอง และข้อมูลเมตาอื่นๆ

ในโพสต์นี้ เราจะให้คำแนะนำที่ครอบคลุมเกี่ยวกับวิธีการทำซ้ำหน้า โพสต์ และอื่นๆ ของ WordPress โดยสมบูรณ์โดยใช้โซลูชันฟรี 100%

ในตอนท้าย คุณจะสามารถทำซ้ำเนื้อหาใดๆ บนไซต์ของคุณด้วยการคลิกปุ่มเพียงปุ่มเดียว เริ่มกันเลย

สารบัญ

  • วิธีทำซ้ำโพสต์หรือเพจใน WordPress: สามวิธี
  • วิธีทำซ้ำหน้า WordPress โดยใช้ปลั๊กอิน
  • โพสต์ซ้ำ Yoast
  • โพสต์ซ้ำ
  • WooCommerce
  • วิธีทำซ้ำหน้า WordPress โดยใช้ตัวแก้ไข
  • ตัวแก้ไขบล็อก (Gutenberg)
  • ธาตุ
  • วิธีทำซ้ำหน้า WordPress ด้วยตนเองด้วยรหัส
เร่งกระบวนการสร้างเว็บของคุณให้เร็วขึ้นด้วยชุดเว็บไซต์เต็มรูปแบบ

วิธีทำซ้ำโพสต์หรือเพจใน WordPress: สามวิธี

มีสามวิธีหลักที่คุณสามารถใช้เพื่อทำซ้ำหน้า WordPress โพสต์หรือประเภทโพสต์ที่กำหนดเองอื่น ๆ :

  • ปลั๊กอิน – วิธีที่ง่ายที่สุดในการทำซ้ำโพสต์หรือเพจคือการใช้หนึ่งในปลั๊กอินเฉพาะที่มีอยู่มากมาย (ส่วนใหญ่ฟรี)
  • ตัวแก้ไข – ขึ้นอยู่กับว่าคุณต้องการทำซ้ำเนื้อหาอย่างละเอียดเพียงใด คุณอาจใช้เพียงตัวแก้ไขได้หากคุณสนใจเฉพาะการทำซ้ำเนื้อหาและการออกแบบ
  • รหัสด้วยตนเอง – สำหรับผู้ที่ทำด้วยตัวเอง คุณสามารถเพิ่มรหัสที่กำหนดเองลงในไฟล์ functions.php ของธีมลูกของคุณ

เราจะครอบคลุมทั้งสามวิธี – มาดูกัน…

วิธีทำซ้ำหน้า WordPress โดยใช้ปลั๊กอิน

มีปลั๊กอินจำนวนมากที่ช่วยให้ทำซ้ำโพสต์ หน้า หรือเนื้อหาอื่น ๆ บนไซต์ของคุณได้ง่าย

หากคุณมีร้านค้า WooCommerce WooCommerce จะรวมคุณสมบัติในตัวของมันเองเพื่อทำซ้ำผลิตภัณฑ์ – เพิ่มเติมเกี่ยวกับด้านล่าง และหากคุณไม่มี คุณจะพบปลั๊กอินฟรีมากมายที่ WordPress.org รวมถึงสิ่งต่อไปนี้:

  • โพสต์ซ้ำ Yoast
  • โพสต์ซ้ำ
  • หน้าซ้ำ
  • โพสต์โรเนียว
  • หน้าซ้ำและโพสต์

นอกจาก WooCommerce แล้ว เราจะแสดงให้คุณเห็นว่ามันทำงานอย่างไรกับปลั๊กอินฟรีสองตัวจากรายการด้านบน:

  • Yoast Duplicate Post เพราะมันใช้งานง่ายมาก และมีฟีเจอร์ “เขียนใหม่ & เผยแพร่ซ้ำ” ที่เป็นเอกลักษณ์ ซึ่งยอดเยี่ยมสำหรับการอัปเดตเนื้อหาที่มีอยู่
  • โพสต์ซ้ำ เพราะมันให้การควบคุมที่ละเอียดยิ่งขึ้นในบางพื้นที่

ปลั๊กอินทั้งสองนั้นฟรีและเรายังทดสอบทั้งสองเพื่อให้แน่ใจว่าใช้งานได้กับทั้งการออกแบบ Elementor และเนื้อหาที่สร้างด้วยโปรแกรมแก้ไข WordPress ดั้งเดิม เราคิดว่าปลั๊กอินอื่นๆ ทั้งหมดจากด้านบนจะทำงานร่วมกับ Elementor ได้เช่นกัน แม้ว่าเราจะไม่ได้ทดสอบปลั๊กอินเหล่านั้นโดยเฉพาะก็ตาม

โพสต์ซ้ำ Yoast

ก่อนอื่น มาดู Yoast Duplicate Post กันก่อน ปลั๊กอินนี้ดีมากหากคุณต้องการวิธีที่ง่ายและรวดเร็วในการทำซ้ำโพสต์ เพจ หรือประเภทโพสต์ที่กำหนดเองอื่นๆ

นอกจากจะให้คุณลอกแบบเนื้อหาแล้ว ยังมีฟีเจอร์เขียนใหม่และเผยแพร่ซ้ำที่ไม่เหมือนใคร ซึ่งจะช่วยคุณในการอัปเดตเนื้อหาที่มีอยู่ โดยพื้นฐานแล้ว คุณลักษณะนี้ช่วยให้คุณทำซ้ำเนื้อหาเพื่อทำการเปลี่ยนแปลง จากนั้น "รวม" เวอร์ชันที่ทำซ้ำกลับเป็นเวอร์ชันดั้งเดิมเมื่อคุณต้องการทำการเปลี่ยนแปลงจริง

ในการเริ่มต้น ให้ติดตั้งและเปิดใช้งานปลั๊กอิน Yoast Duplicate Post ฟรีจาก WordPress.org

ตอนนี้ คุณมีวิธีต่างๆ สองสามวิธีในการทำซ้ำเนื้อหา

ก่อนอื่น คุณสามารถไปที่รายการ โพสต์ หลักหรือ เพจ หากคุณวางเมาส์เหนือรายการในรายการ คุณจะเห็นสามตัวเลือก:

  • โคลน – ทำซ้ำเนื้อหาและเก็บแท็บเบราว์เซอร์ของคุณไว้ในรายการโพสต์/เพจ
  • แบบ ร่างใหม่ – ทำซ้ำเนื้อหาและเปิดโปรแกรมแก้ไขสำหรับเนื้อหาที่ทำซ้ำ เพื่อให้คุณสามารถเริ่มทำงานได้ทันที
  • เขียนซ้ำและเผยแพร่ซ้ำ – นี่เป็นคุณสมบัติที่มีประโยชน์สำหรับการอัปเดตเนื้อหาเก่า ดังที่เราได้กล่าวไว้ข้างต้น ความแตกต่างที่สำคัญคือมันจะช่วยให้คุณรวมเนื้อหากลับเข้าไปในโพสต์ต้นฉบับเมื่อคุณทำเสร็จแล้ว
ซ้ำหน้า 1 ตัวเลือกในหน้ารายการ

วิธีที่ง่ายที่สุดคือเพียงคลิก โคลน จากนั้น คุณจะเห็นรายการแบบร่างใหม่สำหรับเนื้อหาที่ซ้ำกันปรากฏในรายการ ปลั๊กอินจะทำเครื่องหมายด้วยข้อความแจ้ง "แบบร่างการปรับแต่ง" เพื่อแจ้งให้คุณทราบว่าเป็นเวอร์ชันที่ซ้ำกัน:

ประการที่สอง คุณยังสามารถทำซ้ำเนื้อหาจากภายในโปรแกรมแก้ไข WordPress คุณจะพบตัวเลือกเหล่านี้ในส่วน สถานะและการเปิดเผย ของแถบด้านข้าง โพสต์/หน้า :

สุดท้าย คุณยังสามารถทำซ้ำโพสต์หรือเพจจำนวนมากได้โดยใช้ตัวเลือกของปลั๊กอินในการดำเนินการแบบกลุ่มแบบเลื่อนลงของรายการ โพสต์ หรือ เพจ :

  1. ใช้ช่องทำเครื่องหมายเพื่อเลือกโพสต์หรือเพจทั้งหมดที่คุณต้องการทำซ้ำ
  2. เลือกวิธีการทำซ้ำจากเมนูแบบเลื่อนลง – โคลน หรือ เขียนใหม่และเผยแพร่ซ้ำ
  3. คลิก สมัคร

หากคุณต้องการปรับแต่งการทำงานของปลั๊กอิน คุณสามารถไปที่ การ ตั้งค่า → ทำซ้ำโพสต์ พื้นที่นี้ช่วยให้คุณ:

  • เลือกเนื้อหาที่จะทำซ้ำ
  • เพิ่มคำนำหน้าหรือคำต่อท้ายที่กำหนดเองให้กับชื่อของเนื้อหาที่ทำซ้ำ
  • เลือกวิธีสั่งซื้อเนื้อหาซ้ำในเมนู
  • เลือกประเภทโพสต์เพื่อให้มีสิทธิ์ทำซ้ำ
  • เลือกบทบาทของผู้ใช้ที่สามารถทำสำเนาเนื้อหาได้
  • กำหนดตำแหน่งที่จะแสดงลิงก์/ปุ่มโพสต์ที่ซ้ำกัน
duplicate-page-5-yoast-duplicate-post-settings-area

โพสต์ซ้ำ

Duplicate Post ให้บริการฟังก์ชันพื้นฐานเดียวกันกับ Yoast Duplicate Post ซึ่งจะทำให้การทำซ้ำโพสต์หรือเพจทำได้ง่ายและรวดเร็ว

ข้อดีบางประการของปลั๊กอินนี้เหนือ Yoast Duplicate Post คือ:

  1. ให้คุณทำซ้ำโพสต์/หน้าหลายครั้งได้ด้วยคลิกเดียว ตัวอย่างเช่น คุณสามารถบอกให้สร้างสำเนาซ้ำกันสี่ชุด
  2. ให้คุณควบคุมได้มากขึ้นว่าเนื้อหาใดที่คุณทำซ้ำระหว่างโพสต์
  3. มีคุณลักษณะในการสแกนไซต์ของคุณเพื่อหาเนื้อหาที่ซ้ำกัน ซึ่งมีประโยชน์สำหรับการค้นหาเนื้อหาที่ซ้ำกันอย่างรวดเร็ว
  4. ให้คุณคัดลอกเนื้อหาระหว่างไซต์เครือข่ายหลายไซต์ของ WordPress รวมถึงไซต์ที่อยู่ในโดเมนย่อย (แม้ว่าคุณลักษณะนี้ต้องใช้ปลั๊กอินพรีเมียม $19.98)
  5. ให้ตัวเลือกแก่คุณในการแปลงโพสต์เป็นเพจและในทางกลับกัน (ต้องใช้เวอร์ชันพรีเมียมด้วย)

หากคุณไม่ต้องการคุณสมบัติเหล่านั้น เราขอแนะนำให้ใช้ Yoast Duplicate Post เนื่องจากเป็นที่นิยมมากกว่าและช่วยให้งานสำเร็จลุล่วง แต่ถ้าคุณต้องการคุณสมบัติเหล่านั้น นี่เป็นอีกตัวเลือกที่ดีที่ควรพิจารณา

ในการเริ่มต้น ให้ติดตั้งและเปิดใช้งานปลั๊กอิน Duplicate Post ฟรีจาก WordPress.org ทันทีที่คุณเปิดใช้งาน มันจะเริ่มทำงาน

ไปที่รายการ โพสต์/เพจ แล้ววางเมาส์เหนือเนื้อหาที่คุณต้องการทำซ้ำ คุณจะเห็นตัวเลือกใหม่ในการ คัดลอก หากคุณวางเมาส์เหนือจุดนั้น คุณจะขยายการตั้งค่าเพิ่มเติมบางอย่างเพื่อเลือกจำนวนสำเนาที่จะสร้างและการตั้งค่าที่จะใช้ (เพิ่มเติมเกี่ยวกับสิ่งเหล่านั้นในอีกไม่กี่วินาที):

duplicate-page-6-duplicate-post-plugin

เช่นเดียวกับ Yoast Duplicate Post คุณยังสามารถใช้ช่องทำเครื่องหมายและการดำเนินการแบบกลุ่มแบบเลื่อนลงเพื่อคัดลอกหลายโพสต์จำนวนมาก

หากต้องการกำหนดการตั้งค่าปลั๊กอิน คุณสามารถไปที่แท็บ คัดลอกและลบโพสต์ ใหม่ในแดชบอร์ด WordPress ของคุณ ที่นี่คุณสามารถกำหนดการตั้งค่าทั้งหมดรวมถึง:

  • เนื้อหาใดที่จะทำซ้ำ
  • ใครสามารถทำซ้ำเนื้อหา
  • ประเภทโพสต์ที่กำหนดเองใดที่จะเปิดใช้งานการทำซ้ำ
  • เป็นต้น

ข้อดีอย่างหนึ่งคือคุณสามารถสร้างโปรไฟล์การตั้งค่าได้หลายโปรไฟล์และเลือกการกำหนดค่าที่จะใช้เมื่อคุณทำซ้ำเนื้อหา

หากคุณเลื่อนไปที่ด้านล่างของพื้นที่การตั้งค่า คุณจะพบคุณลักษณะสำหรับสแกนหาเนื้อหาที่ซ้ำกันในไซต์ของคุณ:

อีกครั้ง หากคุณต้องการวิธีง่ายๆ ในการทำซ้ำเนื้อหา เราขอแนะนำให้ใช้ปลั๊กอิน Yoast Duplicate Post แต่ถ้าคุณสมบัติเหล่านี้เข้าตาคุณ Duplicate Post ก็ทำงานได้ดีเช่นกัน

WooCommerce

หากคุณใช้ WooCommerce เพื่อสร้างร้านค้าอีคอมเมิร์ซ WooCommerce มีคุณลักษณะในตัวสำหรับผลิตภัณฑ์ที่ซ้ำกัน – ไม่จำเป็นต้องติดตั้งปลั๊กอินแยกต่างหาก

หากต้องการทำซ้ำผลิตภัณฑ์ ให้ไปที่พื้นที่ ผลิตภัณฑ์ ในแดชบอร์ดของคุณ จากนั้น วางเมาส์เหนือผลิตภัณฑ์ที่คุณต้องการทำซ้ำ แล้วคลิก ทำสำเนา :

คุณยังสามารถทำซ้ำผลิตภัณฑ์จากภายในตัวแก้ไขผลิตภัณฑ์ได้โดยคลิกตัวเลือก คัดลอกไปยังแบบร่างใหม่ ภายใต้การตั้งค่า เผยแพร่ :

หมายเหตุ – ตัวเลือกเหล่านี้จะปรากฏบนผลิตภัณฑ์เท่านั้น หากคุณต้องการทำซ้ำโพสต์และเพจ คุณจะต้องติดตั้งปลั๊กอินตัวใดตัวหนึ่งจากด้านบน

วิธีทำซ้ำหน้า WordPress โดยใช้ตัวแก้ไข

หากคุณกังวลเกี่ยวกับการทำซ้ำเนื้อหา/การออกแบบของโพสต์หรือเพจเป็นหลัก คุณอาจสบายดีโดยไม่ต้องใช้ปลั๊กอิน ต้องขอบคุณคุณสมบัติตัวแก้ไขในตัวบางอย่าง

ในส่วนนี้ เราจะแสดงวิธีทำซ้ำการออกแบบที่คุณสร้างอย่างรวดเร็วด้วยโปรแกรมแก้ไขบล็อกแบบเนทีฟ (Gutenberg) หรือ Elementor

โปรดทราบว่าทั้งสองวิธีนี้จะทำซ้ำเฉพาะเนื้อหาและการออกแบบเท่านั้น คุณจะต้องสร้างข้อมูลเมตาที่สำคัญใดๆ ใหม่ด้วยตนเอง เช่น ชื่อเรื่อง หมวดหมู่ แท็ก ฟิลด์ที่กำหนดเอง ฯลฯ

ตัวแก้ไขบล็อก (Gutenberg)

หากต้องการทำซ้ำเนื้อหาอย่างรวดเร็วจากตัวแก้ไขบล็อก ให้เริ่มโดยเปิดตัวแก้ไขสำหรับโพสต์หรือเพจที่คุณต้องการทำซ้ำ

คลิกไอคอน จุดสามจุด ที่มุมขวาบนเพื่อขยายเมนู จากนั้นเลือกตัวเลือกเพื่อ คัดลอกเนื้อหาทั้งหมด :

ซ้ำหน้า 11 ซ้ำเนื้อหากูเตนเบิร์ก

ตอนนี้สร้างโพสต์หรือหน้าใหม่ จากนั้นคลิกเข้าไปในตัวแก้ไขและวางเนื้อหา คุณสามารถ:

  • ใช้แป้นพิมพ์ลัด เช่น Ctrl + V หรือ Cmd + V
  • คลิกขวาและเลือกวาง

คุณควรเห็นสำเนาของเนื้อหาต้นฉบับในเครื่องมือแก้ไข อย่างไรก็ตาม คุณจะต้องแน่ใจว่าได้เพิ่มชื่อเรื่อง หมวดหมู่ แท็ก ฯลฯ ด้วยตนเอง

ธาตุ

หมายเหตุ – คุณสามารถทำซ้ำหน้าหรือโพสต์ที่สร้างด้วย Elementor โดยใช้ปลั๊กอินที่เรากล่าวถึงข้างต้น แต่ถ้าคุณกังวลเกี่ยวกับการทำซ้ำการออกแบบโพสต์/เพจของ Elementor (แทนที่จะเป็นข้อมูลเมตาอื่น ๆ เช่นผู้เขียนและหมวดหมู่) คุณสามารถทำได้โดยใช้ระบบเทมเพลตของ Elementor

เรามีคำแนะนำเกี่ยวกับวิธีการทำซ้ำหน้า Elementor แต่นี่คือแนวคิดพื้นฐาน

ขั้นแรก คุณสามารถบันทึกการออกแบบของคุณเป็นเทมเพลตจากอินเทอร์เฟซตัวแก้ไข Elementor:

ทำซ้ำหน้า 12 องค์ประกอบแม่แบบ

จากนั้น คุณสามารถสร้างโพสต์หรือเพจใหม่และแทรกเทมเพลตจากไลบรารีเทมเพลต Elementor

หากคุณต้องการทำซ้ำมากกว่าหน้าเดียว คุณสามารถใช้คุณลักษณะชุดเว็บไซต์ของ Elementor เพื่อส่งออก/นำเข้าการออกแบบเว็บไซต์ที่สมบูรณ์

ทำซ้ำการออกแบบเว็บไซต์ที่สมบูรณ์ของคุณโดยนำเข้าชุดเว็บไซต์ของคุณเอง

คุณสมบัตินำเข้า/ส่งออก Elementor ช่วยให้คุณนำเข้าผลงานสร้างสรรค์ของคุณเองและสร้างเว็บไซต์ใหม่ได้ในไม่กี่วินาที เพียงสร้างพิมพ์เขียวที่สามารถใช้ได้กับหลายโครงการ หรือนำการสร้างเว็บที่คุณชื่นชอบมาใช้ซ้ำ จากนั้น ส่งออกทั้งเว็บไซต์และนำไปใช้กับโครงการอื่นๆ ของคุณ

คุณสามารถใช้สิ่งที่คุณสร้างเองหรือเลือกจากไลบรารีชุดเว็บไซต์ที่ออกแบบโดยนักออกแบบของเรา เพียงนำไปใช้กับเว็บไซต์ของคุณ เพิ่มเนื้อหา และทำให้เป็นของคุณเอง

วิธีทำซ้ำหน้า WordPress ด้วยตนเองด้วยรหัส

หากคุณต้องการวิธีการทำด้วยตัวเอง (DIY) คุณสามารถสร้างฟังก์ชันเพจซ้ำของคุณเองได้โดยใช้โค้ดที่กำหนดเอง วิธีนี้ไม่ได้เพิ่มประโยชน์ใดๆ ให้กับเส้นทางปลั๊กอินนอกเหนือจากการขจัดความจำเป็นในการติดตั้งปลั๊กอินอื่นบนไซต์ของคุณ

อย่างไรก็ตาม หากการหลีกเลี่ยงปลั๊กอินอื่นเป็นสิ่งสำคัญสำหรับคุณ วิธีนี้ถือว่าใช้ได้และจะใช้ได้กับเนื้อหาตัวแก้ไขทั่วไปและ Elementor

หากต้องการใช้โค้ดนี้ คุณต้องเพิ่มลงในไฟล์ functions.php ของธีมหรือปลั๊กอินการจัดการโค้ด เช่น Code Snippets หากคุณเพิ่มลงในไฟล์ functions.php อย่าลืมใช้ธีมลูก

 $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /* * if post data exists, create the post duplicate */ if (isset( $post ) && $post != null) { /* * new post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_name' => $post->post_name, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => 'draft', 'post_title' => $post->post_title, 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order ); /* * insert the post by wp_insert_post() function */ $new_post_id = wp_insert_post( $args ); /* * get all current post terms ad set them to the new post draft */ $taxonomies = get_object_taxonomies($post->post_type); // returns array of taxonomy names for post type, ex array("category", "post_tag"); foreach ($taxonomies as $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slugs')); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } /* * duplicate all post meta just in two SQL queries */ $post_meta_infos = $wpdb->get_results("SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$post_id"); if (count($post_meta_infos)!=0) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) "; foreach ($post_meta_infos as $meta_info) { $meta_key = $meta_info->meta_key; if( $meta_key == '_wp_old_slug' ) continue; $meta_value = addslashes($meta_info->meta_value); $sql_query_sel[]= "SELECT $new_post_id, '$meta_key', '$meta_value'"; } $sql_query.= implode(" UNION ALL ", $sql_query_sel); $wpdb->query($sql_query); } /* * finally, redirect to the edit post screen for the new draft */ wp_redirect( admin_url( 'post.php?action=edit&post=' . $new_post_id ) ); exit; } else { wp_die('Post creation failed, could not find original post: ' . $post_id); } } add_action( 'admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft' ); /* * Add the duplicate link to action list for post_row_actions */ function rd_duplicate_post_link( $actions, $post ) { if (current_user_can('edit_posts')) { $actions['duplicate'] = '<a>ID, basename(__FILE__), 'duplicate_nonce' ) . '" title="Duplicate this item" rel="permalink">Duplicate</a>'; } return $actions; } add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 ); <code readonly="true">$current_user = wp_get_current_user(); $new_post_author = $current_user-&gt;ID; /* * if post data exists, create the post duplicate */ if (isset( $post ) &amp;&amp; $post != null) { /* * new post data array */ $args = array( &#39;comment_status&#39; =&gt; $post-&gt;comment_status, &#39;ping_status&#39; =&gt; $post-&gt;ping_status, &#39;post_author&#39; =&gt; $new_post_author, &#39;post_content&#39; =&gt; $post-&gt;post_content, &#39;post_excerpt&#39; =&gt; $post-&gt;post_excerpt, &#39;post_name&#39; =&gt; $post-&gt;post_name, &#39;post_parent&#39; =&gt; $post-&gt;post_parent, &#39;post_password&#39; =&gt; $post-&gt;post_password, &#39;post_status&#39; =&gt; &#39;draft&#39;, &#39;post_title&#39; =&gt; $post-&gt;post_title, &#39;post_type&#39; =&gt; $post-&gt;post_type, &#39;to_ping&#39; =&gt; $post-&gt;to_ping, &#39;menu_order&#39; =&gt; $post-&gt;menu_order ); /* * insert the post by wp_insert_post() function */ $new_post_id = wp_insert_post( $args ); /* * get all current post terms ad set them to the new post draft */ $taxonomies = get_object_taxonomies($post-&gt;post_type); // returns array of taxonomy names for post type, ex array(&quot;category&quot;, &quot;post_tag&quot;); foreach ($taxonomies as $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array(&#39;fields&#39; =&gt; &#39;slugs&#39;)); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } /* * duplicate all post meta just in two SQL queries */ $post_meta_infos = $wpdb-&gt;get_results(&quot;SELECT meta_key, meta_value FROM $wpdb-&gt;postmeta WHERE post_id=$post_id&quot;); if (count($post_meta_infos)!=0) { $sql_query = &quot;INSERT INTO $wpdb-&gt;postmeta (post_id, meta_key, meta_value) &quot;; foreach ($post_meta_infos as $meta_info) { $meta_key = $meta_info-&gt;meta_key; if( $meta_key == &#39;_wp_old_slug&#39; ) continue; $meta_value = addslashes($meta_info-&gt;meta_value); $sql_query_sel[]= &quot;SELECT $new_post_id, &#39;$meta_key&#39;, &#39;$meta_value&#39;&quot;; } $sql_query.= implode(&quot; UNION ALL &quot;, $sql_query_sel); $wpdb-&gt;query($sql_query); } /* * finally, redirect to the edit post screen for the new draft */ wp_redirect( admin_url( &#39;post.php?action=edit&amp;post=&#39; . $new_post_id ) ); exit; } else { wp_die(&#39;Post creation failed, could not find original post: &#39; . $post_id); } } add_action( &#39;admin_action_rd_duplicate_post_as_draft&#39;, &#39;rd_duplicate_post_as_draft&#39; ); /* * Add the duplicate link to action list for post_row_actions */ function rd_duplicate_post_link( $actions, $post ) { if (current_user_can(&#39;edit_posts&#39;)) { $actions[&#39;duplicate&#39;] = &#39;&lt;a&gt;ID, basename(__FILE__), &#39;duplicate_nonce&#39; ) . &#39;&quot; title=&quot;Duplicate this item&quot; rel=&quot;permalink&quot;&gt;Duplicate&lt;/a&gt;&#39;; } return $actions; } add_filter( &#39;post_row_actions&#39;, &#39;rd_duplicate_post_link&#39;, 10, 2 );</code> $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /* * if post data exists, create the post duplicate */ if (isset( $post ) && $post != null) { /* * new post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_name' => $post->post_name, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => 'draft', 'post_title' => $post->post_title, 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order ); /* * insert the post by wp_insert_post() function */ $new_post_id = wp_insert_post( $args ); /* * get all current post terms ad set them to the new post draft */ $taxonomies = get_object_taxonomies($post->post_type); // returns array of taxonomy names for post type, ex array("category", "post_tag"); foreach ($taxonomies as $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slugs')); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } /* * duplicate all post meta just in two SQL queries */ $post_meta_infos = $wpdb->get_results("SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$post_id"); if (count($post_meta_infos)!=0) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) "; foreach ($post_meta_infos as $meta_info) { $meta_key = $meta_info->meta_key; if( $meta_key == '_wp_old_slug' ) continue; $meta_value = addslashes($meta_info->meta_value); $sql_query_sel[]= "SELECT $new_post_id, '$meta_key', '$meta_value'"; } $sql_query.= implode(" UNION ALL ", $sql_query_sel); $wpdb->query($sql_query); } /* * finally, redirect to the edit post screen for the new draft */ wp_redirect( admin_url( 'post.php?action=edit&post=' . $new_post_id ) ); exit; } else { wp_die('Post creation failed, could not find original post: ' . $post_id); } } add_action( 'admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft' ); /* * Add the duplicate link to action list for post_row_actions */ function rd_duplicate_post_link( $actions, $post ) { if (current_user_can('edit_posts')) { $actions['duplicate'] = '<a>ID, basename(__FILE__), 'duplicate_nonce' ) . '" title="Duplicate this item" rel="permalink">Duplicate</a>'; } return $actions; } add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 );
			

โดยค่าเริ่มต้น ข้อมูลโค้ดจะเปิดใช้งานการทำซ้ำสำหรับทั้งโพสต์และเพจ หากคุณต้องการเปิดใช้งานสำหรับอย่างใดอย่างหนึ่ง คุณสามารถลบตัวกรอง page_row_actions หรือ post_row_actions ที่ด้านล่างของข้อมูลโค้ด

ปรับปรุงกระบวนการสร้างเว็บของคุณด้วยการทำซ้ำหน้าและโพสต์

ความสามารถในการทำซ้ำหน้า โพสต์ หรือโพสต์ประเภทอื่นๆ ของ WordPress นั้นมีประโยชน์มากเมื่อคุณทำงานบนไซต์ WordPress

ในโพสต์นี้ เราได้แชร์วิธีการต่างๆ 3 วิธีที่คุณสามารถใช้เพื่อทำซ้ำเนื้อหา

สำหรับคนส่วนใหญ่ วิธีที่ง่ายที่สุดในการโคลนโพสต์หรือเพจทั้งหมดคือการใช้ปลั๊กอิน Yoast Duplicate Post ฟรี มันเริ่มทำงานทันทีและทำงานร่วมกับตัวแก้ไขบล็อก (Gutenberg), Elementor และตัวแก้ไข Classic TinyMCE นอกจากนี้ยังใช้งานได้กับโพสต์ทุกประเภท ตั้งแต่หน้าไปจนถึงโพสต์ และประเภทโพสต์แบบกำหนดเองที่คุณอาจใช้อยู่

หากคุณมีร้านค้า WooCommerce คุณสามารถใช้คุณสมบัติในตัวของ WooCommerce เพื่อทำซ้ำผลิตภัณฑ์ได้ หรือคุณสามารถเพิ่มโค้ดที่กำหนดเองลงในไซต์ของคุณหากคุณไม่ต้องการติดตั้งปลั๊กอินอื่น

สุดท้าย หากคุณต้องการทำซ้ำเนื้อหา/การออกแบบของโพสต์ คุณสามารถใช้ระบบเทมเพลตของ Elementor หรือใช้ตัวเลือกตัวแก้ไขบล็อกเพื่อคัดลอกเนื้อหาทั้งหมด

ก่อนที่เราจะไป ขอเตือนสั้นๆ หนึ่งข้อ คุณไม่ต้องการเผยแพร่เนื้อหาที่ซ้ำกันในสถานการณ์ส่วนใหญ่ เนื่องจากอาจส่งผลเสียต่อ SEO ของคุณได้ ดังนั้น หากคุณทำซ้ำหน้าโดยไม่เปลี่ยนเนื้อหา (อาจแค่เปลี่ยน URL) คุณควรพิจารณาเปลี่ยนเส้นทางหน้าเดิมเมื่อทำเสร็จแล้ว

คุณยังมีข้อสงสัยเกี่ยวกับวิธีการทำซ้ำหน้าหรือโพสต์ WordPress หรือไม่? แจ้งให้เราทราบในส่วนความคิดเห็น

รับเว็บไซต์ WP ที่โฮสต์ ทันที
เรียนรู้เพิ่มเติม
รับโฮสต์
เว็บไซต์ WP
ทันที
เรียนรู้เพิ่มเติม
เข้าร่วมชุมชนผู้สร้างเว็บระดับโลกของเรา
เข้าร่วมเดี๋ยวนี้
สัมผัสจิตวิญญาณแห่งชุมชนในศูนย์กลางของเรา
เข้าร่วมเดี๋ยวนี้
เชื่อมต่อกับเพื่อนผู้สร้างเว็บ
ค้นหามีตติ้ง