วิธีสร้าง WordPress Child Theme

เผยแพร่แล้ว: 2020-04-16

คุณพร้อมที่จะสร้างธีมลูกใน WordPress แล้วหรือยัง?

สารบัญ
1 การติดตั้งธีมหลัก
2 วิธีสร้างไดเร็กทอรีธีมลูกของ WordPress
3 สร้างสไตล์ชีต
4 สร้างไฟล์ฟังก์ชัน
5 กลไกในการสร้างธีมลูกใน WordPress
6 คำแนะนำสำหรับผู้สร้างธีมเด็ก
7 ไฟล์ในธีมลูก
8 วิธีเปิดใช้งานธีมลูก
9 วิธีสร้างและปรับแต่ง WordPress Child Theme
10 แก้ไขข้อผิดพลาดของธีมลูกและผู้ปกครอง
11 สิ่งที่ต้องจำสำหรับ WordPress Child Theme

การติดตั้งธีมหลัก

คุณต้องตัดสินใจเลือกธีมที่คุณต้องการ คุณควรเลือกธีมที่คุณต้องการเลือกเป็นธีมหลัก ทั้งนี้ขึ้นอยู่กับความชอบของคุณ

วิธีสร้างไดเร็กทอรีธีมลูกของ WordPress

สร้างไฟล์ใหม่ใน โฟลเดอร์ public_html/wp-content/themes ของการติดตั้ง WordPress เพื่อเก็บธีม หลีกเลี่ยงการทำสิ่งนี้ในไซต์สด คุณสามารถทดสอบสิ่งนี้ในไซต์การพัฒนาก่อนที่จะใช้งานบนไซต์การแสดงละคร โดยปกติแล้ว มีวิธีปฏิบัติที่ดีในการรักษาชื่อโฟลเดอร์ใหม่ที่ขึ้นต้นด้วยชื่อธีมหลักตามด้วยคำต่อท้าย

กระบวนการนี้เกี่ยวข้องกับการสร้างไฟล์สองไฟล์: สไตล์ชีตและไฟล์ฟังก์ชัน

สร้างสไตล์ชีต

สร้างไฟล์ใหม่
style.css
ภายในโฟลเดอร์และเพิ่มรหัสต่อไปนี้:
 /*

ชื่อธีม: ธีมลูก CodeFlist

URI ธีม: https://yourwebsite.com/codeflist-child/

คำอธิบาย: ธีมลูกจากธีม CodeFlist หลัก

ผู้เขียน : อมาร์ ราช มหาโต

ผู้เขียน URI: https://demo.codeflist.com/

แม่แบบ: CodeFlist

เวอร์ชัน: 1.0.0

แท็ก: ดำ, เขียว, ขาว, สว่าง, มืด, สองคอลัมน์, สามคอลัมน์, แถบด้านข้างซ้าย, แถบด้านข้างขวา, เค้าโครงคงที่, เค้าโครงตอบสนอง, พื้นหลังที่กำหนดเอง, ส่วนหัวที่กำหนดเอง, เมนูกำหนดเอง, ตัวแก้ไข สไตล์, รูปภาพเด่น, ส่วนหัวที่ยืดหยุ่นได้, เทมเพลตแบบเต็มความกว้าง, ไมโครฟอร์แมต, โพสต์รูปแบบ, รองรับภาษา rtl, โพสต์แบบเหนียว, ตัวเลือกธีม, พร้อมการแปล, พร้อมสำหรับการเข้าถึง, เลย์เอาต์ที่ตอบสนอง, ไม่มีที่สิ้นสุด เลื่อน, หลังเลื่อน, ออกแบบ, อาหาร, วารสาร, นิตยสาร, ข่าว, การถ่ายภาพ, ผลงาน, สะอาด, ร่วมสมัย, มืด, สง่า, ทันสมัย, มืออาชีพ, ซับซ้อน

โดเมนข้อความ: codeflist-child

*/

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

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

สร้างไฟล์ฟังก์ชัน

การเพิ่มไฟล์ฟังก์ชันเป็นขั้นตอนที่จำเป็นในการจัดคิวสไตล์ชีตจากธีมหลัก หากคุณพลาดขั้นตอนนี้ ธีมลูกของคุณจะไม่มีสไตล์เลย นอกจากนี้ให้เพิ่มไฟล์
ฟังก์ชั่น.php
ในโฟลเดอร์ใหม่ เพิ่มรหัสต่อไปนี้ลงไป:
 <?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
ฟังก์ชั่น my_theme_enqueue_styles () {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
?>

กลไกในการสร้างธีมลูกใน WordPress

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

คำแนะนำสำหรับผู้สร้างธีมเด็ก

คุณจำเป็นต้องรู้ความแตกต่างระหว่าง
get_stylesheet_directory()
และ
get_template_directory()
หากคุณสร้างธีมของคุณเอง คุณต้องชัดเจนว่า
ฟังก์ชัน get_template_
จะชี้ไดเร็กทอรีธีมหลักเสมอและ
get_stylesheet_ คะแนน
ไดเร็กทอรีของธีมลูก ทางเลือกเป็นของคุณ ไม่ว่าคุณจะต้องการใช้ผู้ปกครองหรือเด็ก

ไฟล์ในธีมลูก

มีไฟล์อย่างน้อยสองไฟล์ สไตล์ชีต และไฟล์ฟังก์ชัน สไตล์ชีตจะบอก WordPress เกี่ยวกับประเภทของธีม นอกจากนี้ยังให้แนวคิดเกี่ยวกับธีมหลัก รายละเอียดทั้งหมดจะรวมอยู่ในสไตล์ชีตโดยใช้รูปแบบข้อความที่ใส่ความคิดเห็น

มีแนวทางปฏิบัติที่ไม่ถูกต้องในการเรียกสไตล์ชีตหนึ่งจากสไตล์ชีตอื่น อันที่จริง คุณควรเข้าคิวไฟล์ฟังก์ชัน ควรมีฟังก์ชันในไฟล์ฟังก์ชันที่จัดคิวสไตล์ชีต

ธีมหลักประกอบด้วย an
index.php
ไฟล์ แต่ไม่จำเป็นในธีมลูก

วิธีเปิดใช้งานธีมลูก

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

วิธีสร้างและปรับแต่ง WordPress Child Theme

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

โดยทั่วไป มีสามวิธีหากคุณวางแผนที่จะแทนที่ฟังก์ชันธีมหลัก

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

แก้ไขข้อผิดพลาดของธีมเด็กและผู้ปกครอง

หลังจากสร้างธีมลูก อาจมีปัญหาบางอย่างเนื่องจากฟังก์ชัน ลักษณะ หรือไฟล์อื่นๆ มีขั้นตอนหลายขั้นตอนเพื่อให้แน่ใจว่าทุกอย่างถูกต้อง

  1. ตรวจสอบว่ามีการเปิดใช้งานธีมย่อยหรือไม่ คุณต้องแน่ใจเกี่ยวกับสถานะของธีมหลัก
  2. ล้างแคชของเบราว์เซอร์และแคชที่สร้างโดยปลั๊กอิน
  3. ตรวจสอบว่าคุณตั้งชื่อไฟล์อย่างถูกต้องด้วยไวยากรณ์ที่ถูกต้องหรือไม่เมื่อคุณสร้างธีมลูกใน WordPress
  4. ตรวจสอบว่าคุณได้บันทึกการเปลี่ยนแปลงหรือไม่
  5. หากฟังก์ชันที่เสียบได้ไม่ทำงาน ให้ตรวจสอบว่ามีชื่อไม่ตรงกันหรือฟังก์ชันในธีมหลักเป็นแบบเสียบได้หรือไม่
  6. ตรวจสอบค่าลำดับความสำคัญและ hooks ที่มีอยู่ในฟังก์ชันในกรณีที่เกิดปัญหาการแทนที่
  7. ตรวจสอบค่าลำดับความสำคัญ ชื่อ และ hook หากปัญหาเกิดจากฟังก์ชันที่ลบออก
  8. ค้นหาตำแหน่งและตำแหน่งที่มีข้อผิดพลาดในโค้ดโดยการตรวจสอบไฟล์ wp-config.php ในโหมดแก้ไขข้อบกพร่อง
  9. ต้องตรวจสอบรหัสเอาต์พุตสำหรับองค์ประกอบต่างๆ

สิ่งที่ต้องจำสำหรับ WordPress Child Theme

  1. ควรมีสไตล์ชีตและไฟล์ฟังก์ชันในธีมลูก
  2. ห้ามแก้ไขธีมของบุคคลที่สามโดยตรงโดยไม่สร้างธีมย่อย สิ่งนี้จะปกป้องการปรับแต่งที่ทำขึ้น
  3. เปิดใช้งานธีมและอย่าลบธีมหลัก
  4. เมื่อมีสองไฟล์ที่มีชื่อเดียวกัน WordPress จะใช้ไฟล์ในไฟล์ย่อย
  5. ในการแทนที่ฟังก์ชันที่เสียบได้ในธีมหลัก คุณต้องสร้างฟังก์ชันในธีมย่อยที่มีชื่อเดียวกัน
  6. ด้วยการใช้ ฟังก์ชัน remove_action() หรือ remove_filter() คุณสามารถยกเลิกการเชื่อมต่อฟังก์ชันจากธีมหลักได้
  7. เมื่อคุณสร้างฟังก์ชันด้วย hook เดียวกัน คุณสามารถเพิ่มฟังก์ชันของธีมหลักได้

ห่อ

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

การอ่านเพิ่มเติม

WordPress รับ ID โพสต์
โพสต์กับเพจใน WordPress
WordPress Child Theme คืออะไร
วิธีลบธีมใน WordPress
วิธีเพิ่มหมวดหมู่ใน WordPress
วิธีเปลี่ยนรหัสผ่านใน WordPress