ชีวิต Geek สบายขึ้นเมื่อมี WP-CLI

วันนี้เรามีเครื่องมือดีๆ มาแนะนำชาว Geek WordPress ทั้งหลาย เครื่องมือนั้นมีชื่อว่า WP-CLI แล้วมันคืออะไรล่ะ? ทำไมชีวิต Geek ถึงจะสบายขึ้น?

WP-CLI เป็น command line interface สำหรับ WordPress ครับ มีข้อดีสุดแจ่มตามชื่อของมันเลยคือ เราสามารถสั่งงาน เช่น ลงปลั๊กอิน หรือติดตั้ง WordPress โดยไม่ต้องผ่านหน้า UI ของ WordPress เลย

วิธีติดตั้งก็ง่ายนิดเดียวครับ ทำตามนี้ได้เลย (แนะนำให้ใช้ PHP เวอร์ชั่น 5.5 ครับ)

  1. เปิด Terminal ของเราขึ้นมา
  2. สั่ง curl -kL https://raw.github.com/wp-cli/builds/gh-pages/phar/wp-cli.phar > wp-cli.phar
  3. เช็คก่อนว่า wp-cli ที่โหลดมาใช้งานได้จริง สั่ง php wp-cli.phar --info
  4. สั่ง chmod +x wp-cli.phar
  5. สั่ง sudo mv wp-cli.phar /usr/local/bin/wp เพื่อให้เราสั่งคำสั่งแค่ wp แทนที่จะสั่ง wp-cli.phar ครับ มันยาวไป
  6. ขั้นตอนสุดท้าย ลองสั่ง wp --info ดู ถ้าได้ output แบบขั้นตอนที่ 3 ก็เป็นอันเสร็จสิ้นครับ

วิธีติดตั้ง WP-CLI แบบอื่นๆ ดูได้ที่ Alternative Install Methods ครับ

โดย WP-CLI จะทำงานได้ เราต้องไปอยู่ที่ root folder ของ WordPress ของเราก่อนนะครับ อย่างเช่น ถ้าเราอยากติดตั้งปลั๊กอิน เราก็ไปที่ root folder ของ WordPress ของเราแล้วสั่ง

wp plugin install <ชื่อ slug ของปลั๊กอินนั้นๆ>

ตัวอย่างเช่น ถ้าอยากลงปลั๊กอิน Theme Check เราจะสั่ง

wp plugin install theme-check

โดย slug ของปลั๊กอินนั้นเอามาจาก URL ของหน้าปลั๊กอิน Theme Check ครับ ตาม screenshot ด้านล่างนี้

WordPress Plugins - Theme Check

ถ้าอยากจะสร้างไฟล์ wp-config.php ขึ้นมาก็ใช้คำสั่งประมาณนี้ได้เลย

wp core config --dbname="geekwordpress" --dbuser=root --dbpass=root --dbhost="localhost" --allow-root

หรือถ้าใครอยากติดตั้ง Multisite โดยที่ไม่ต้องไปแก้ไฟล์ wp-config.php ไปกดนู่นกดนี่เพื่อติดตั้ง ตอนนี้ไม่ต้องแล้วครับ สามารถสั่งคำสั่งเดียวได้เลยตามนี้

wp core multisite-install --subdomains --title="GeekWordPress Test" --admin_user=admin --admin_password=password [email protected] --allow-root

ใครอยากรู้คำสั่งเพิ่มเติมดูได้ที่ Built-in Commands ใครอยากดูพวก Package เสริมของ WP-CLI ดูได้ที่ Package index ครับ

หลายคนอาจจะมีคำถามว่าคุณค่าที่แท้จริงของมันอยู่ไหน? เราใช้ command line ไปเพื่อความสนุกอย่างเดียวหรือเปล่า? ผมขอตอบว่าไม่ใช่เพื่อความสนุกอย่างเดียวครับ แต่เพื่อขั้นตอนการพัฒนา WordPress ยุคใหม่ที่ได้เกิดขึ้นไปแล้ว ยุคนี้เป็นยุคการทำ "Automate" ครับ เนื่องจากเราสามารถกระทำผ่าน command line ได้ เราจะสามารถทำ "Automate" ได้ง่ายขึ้นครับ วิธีง่ายที่สุดคือเขียน shell script มาสั่งคำสั่งรัวๆ นั่นเอง

ชีวิตสบายขึ้นเยอะเลยจริงๆ นะ 🙂


Mils Burasakorn

Mils Burasakorn