สร้าง Child Theme จาก WP-CLI ดีอย่างไร

Chalermchai Prompunya
Artisan Digital
Published in
2 min readDec 21, 2017

เมื่อวันที่ 16 ธันวาคม 2560 ผมได้เป็น Speaker พูดเรื่อง Basic Child Theme and Recommended Practice และในช่วงของ Q/A มีคำถามที่น่าสนใจหนึ่งคำถามคือ สร้าง Child Theme จาก WP-CLI ต่างจากสร้างโดยใช้ Plugin อย่างไร จึงเป็นที่มาของบทความนี้

โดยปกติแล้วการสร้าง Child Theme ของ WordPress มีวิธีสร้างได้หลากหลายรูปแบบทั้งสร้าง Folder กับ File ขึ้นมาเอง สร้างจาก Plugin สร้างจากเว็บไซต์ Generator หรือใช้ของธีมที่ซื้อมาเป็นต้น บทความนี้ผมจึงเขียนข้อดีข้อเสียของแต่ละวิธีในการสร้าง Child Theme เพื่อประกอบการตัดสินใจ

สร้างเองเขียนโค้ดเอง

วิธีนี้พิจารณาจากเริ่มสร้าง Folder เอง และไฟล์ function.php กับไฟล์ style.css เอง ไม่รวมถึงทำเองไว้แล้วเป็น Template หรือ zip เก็บไว้

ข้อดีของวิธีนี้คือ ทำให้เรามีความรู้เกี่ยวกับการสร้าง Child Theme เองมากขึ้น อ่านเอกสารจาก WordPress เยอะขึ้น

ข้อเสียของวิธีนี้คือ ถ้าไม่ได้อ่านจากเอกสารของ WordPress จะทำออกมาเองได้มั่วมากและอาจเขียนผิดรูปแบบได้ง่าย ยกตัวอย่างของผมที่สร้าง Child Theme เองครั้งแรก มีทั้งเรียก Path ของ File CSS หรือ JS ผิดรูปแบบ หรือ นำเข้าไฟล์ CSS ของธีมแม่มาผิดรูปแบบ ตามตัวอย่างรูปด้านล่างนี้

สร้างจากเว็บไซต์ Generator

เนื่องจากเวิร์ดเพรสเป็น CMS ที่ได้รับความนิยมสูง จึงมีคนทำเครื่องมือออกมาช่วยแก้ไขปัญหาต่าง ๆ มากมาย เว็บไซต์ช่วยสร้าง Child Theme ก็เป็นหนึ่งในนั้น

ข้อดีของวิธีนี้คือ ไม่ต้องมีความรู้เรื่อง Child Theme มากก็สร้างสร้าง Child Theme ขึ้นมาเองได้ มีศัพท์ที่ต้องจำคือ Parent Theme หรือ Folder Name ตามแต่ละเว็บไซต์กำหนดขึ้นมา ส่วนมากจะใช้คำว่า “-child” ต่อจากชื่อธีมที่เราใช้

ข้อเสียของวิธีนี้คือ เสียเวลาไปกับเรื่องที่ไม่จำเป็นเยอะเกินไปเช่น การใส่ข้อมูล การกด Generator เพื่อ Save File zip ลงมาที่เครื่องของเรา การ unzip file และลบไฟล์ zip ทิ้งหรือเก็บไว้ใช้ในงานอื่นต่อไป

สร้างจากปลั๊กอิน

วิธีนี้เป็นวิธีที่เราสามารถติดตั้งปลั๊กอินหนึ่งตัวเพื่อสามารถสร้าง Child Theme ได้เป็นวิธีที่สะดวกอีกวิธีหนึ่งเลยก็ว่าได้

ข้อดีของวิธีนี้คือ สามารถสร้าง Child Theme ขึ้นมาได้ง่ายพอ ๆ กับวิธีที่สร้างจากเว็บไซต์ Generator ต่างกันตรงที่ไม่ต้องมา unzip ไฟล์ Child Theme

ข้อเสียของวิธีนี้คือ เสียเวลาไปกับการติดตั้งปลั๊กอิน และเมื่อใช้สร้าง Child Theme เสร็จแล้วก็ต้อง Deactive และ Delete ทิ้งไป เพราะถ้าปลั๊กอินที่ไม่ได้ใช้งาน หรือใช้เพื่อช่วยแก้ไขปัญหาอะไรสักอย่างที่ไม่จำเป็นต้องเปิดใช้ตลอดเวลา ก็ควรที่จะ Deactive และ Delete ทิ้งไป เพื่อลดการทำงานของ PHP และเหลือไว้เฉพาะปลั๊กอินที่ใช้งานจริง ๆ เท่านั้น

อีกประเด็นที่ผมไม่อยากแนะนำให้ใช้ปลั๊กอินก็เพราะว่า ยิ่งใช้ปลั๊กอินมากเท่าไหร่ ยิ่งเพิ่มโอกาสในการสร้างช่องโหว่ให้กับ WordPress มากเท่านั้น แต่ถ้าใช้ในเครื่อง Localhost เสร็จแล้วลบ Deactive และ Delete ทิ้งก็โอเคอยู่ เท่าที่ผมลองดูโค้ดของปลั๊กอินที่ชื่อว่า Child Theme Configurator ก็น่าสนใจอยู่ ลบข้อมูลใน Database ในส่วนของที่ปลั๊กอินสร้างขึ้นมาให้ด้วย

สร้างจาก WP-CLI

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

ข้อดีของวิธีนี้คือ คำสั่งบรรทัดเดียวสร้าง Child Theme ได้เลย เมื่อสร้างเสร็จ Child Theme จะไปอยู่ที่ /wp-content/theme/ โดยอัตโนมัติ สามารถตามไปเพิ่มรายละเอียดที่ต้องการทีหลังได ้และเป็นมาตราฐานดี เหมาะสำหรับสร้าง Child Theme จากธีมที่ไม่มี Theme Setting เยอะ ๆ เช่น โหลดฟรีจาก WordPress.org

ข้อเสียของวิธีนี้คือ ยังไม่สนับสนุน OS: Windows และวิธีติดตั้ง WP-CLI ก็มีหลายขั้นตอน หากไม่คุ้นเคยกับ Command Line จะทำให้เสียเวลาในการติดตั้งเยอะ ยังไม่มีตัวช่วย Install WP-CLI แบบดับเบิ้ลคลิก แล้วกด Next ต่อไปเรื่อย ๆ พอเสร็จแล้วสามารถใช้ WP-CLI ได้ อีกอย่างคือ ต้องใช้เวลาเรียนรู้คำสั่งเยอะ แต่ในระยะยาวคุ้มที่จะศึกษาเรียนรู้ไว้ เพราะเป็นคำสั่งเกี่ยวกับ WordPress ทั้งหมด ไม่ได้ติดตั้งไว้เผื่อสร้าง Child Theme อย่างเดียว

สรุปส่งท้าย

สุดท้ายแล้วเราก็ต้องหาวิธีที่สามารถทำงานให้ไวที่สุด วิธีสร้าง Child Theme จาก WP-CLI อาจจะไวสำหรับผมแต่สำหรับคนอื่นอาจจะมีวิธีที่ไวกว่านี้ ไม่ว่าจะวิธีไหนก็ตามถ้ามันทำให้งานไวขึ้นก็ใช้วิธีนั้นแหละครับ ไม่มีวิธีที่ดีที่สุด มีแต่วิธีที่เหมาะสมที่สุดก็เท่านั้นเอง

แหล่งข้อมูล

--

--