คำแนะนำของเราเกี่ยวกับโครงสร้างคำสั่ง WP-CLI
เผยแพร่แล้ว: 2022-06-29
อินเทอร์เฟซบรรทัดคำสั่ง WordPress (WP-CLI) เป็นเครื่องมือที่น่าทึ่งสำหรับการปรับปรุงเวิร์กโฟลว์การพัฒนาของคุณ การทำความเข้าใจว่าคำสั่งมีโครงสร้างอย่างไรเป็นกุญแจสำคัญในการใช้ WP-CLI อย่างเต็มศักยภาพ ในบทความนี้ คุณจะได้เรียนรู้วิธีจัดโครงสร้างคำสั่ง WP-CLI รวมถึงวิธีใช้พาเรนต์และคำสั่งย่อย ตลอดจนพารามิเตอร์และสวิตช์
ก่อนที่คุณจะดำดิ่งสู่การสร้างคำสั่ง คุณจะต้องติดตั้ง WP-CLI วิธีการที่แน่นอนแตกต่างกันไปตามระบบปฏิบัติการ แต่คำแนะนำในการติดตั้งและกำหนดค่า WP-CLI ของเรามีทุกสิ่งที่คุณต้องการ
คำสั่งหลักและคำสั่งย่อย
คำสั่ง WP-CLI เกือบทั้งหมดมีโครงสร้างในลักษณะเดียวกัน มี คำสั่งหลัก สำหรับพื้นที่การทำงานที่ใหญ่ขึ้นแต่ละส่วน เช่น wp core
สำหรับการทำงานกับการติดตั้ง WordPress หลัก แต่ละคำสั่งพาเรนต์เหล่านี้สามารถใช้ได้กับคำสั่งย่อยที่แตกต่างกันจำนวนหนึ่ง และต้องใช้กับคำสั่งย่อยอย่างน้อยหนึ่งคำสั่ง
คำสั่งผู้ปกครองวางรากฐาน
ไม่มีคำสั่งหลักจะทำอะไรที่เป็นประโยชน์ได้ด้วยตัวเอง ตัวอย่างเช่น หากคุณลองใช้ wp config
ด้วยตัวเอง คุณจะเห็นสิ่งนี้:
~$ wp config การใช้งาน: wp config create --dbname=--dbuser= [--dbpass= ] [--dbhost= ] [--dbprefix= ] [--dbcharset= ] [--dbcollate= ] [--locale= ] [--extra-php] [--skip-salts] [--skip-check] [--force] [--config-file= ] [--ไม่ปลอดภัย] หรือ: wp config delete [--type= ] [--config-file= ] หรือ: wp config แก้ไข [--config-file= ] หรือ: wp config get [--type= ] [--รูปแบบ= ] [--config-file= ] หรือ: wp config has [--type= ] [--config-file= ] หรือ: รายการกำหนดค่า wp [ ...] [--fields= ] [--รูปแบบ= ] [--เข้มงวด] [--config-file= ] หรือ: wp config path หรือ: wp config set [--เพิ่ม] [--ดิบ] [--anchor= ] [--ตำแหน่ง= ] [--ตัวคั่น= ] [--type= ] [--config-file= ] หรือ: wp config สับเปลี่ยนเกลือ [ ...] [--บังคับ] [--config-file= ] [--ไม่ปลอดภัย] ดู 'wp help config' สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำสั่งเฉพาะ
เพียงอย่างเดียวเท่านั้นที่ให้เบาะแสที่ดีว่าคุณจะใช้คำสั่ง wp config
อย่างไร คุณสามารถทำความเข้าใจได้ดียิ่งขึ้นโดยทำตามคำแนะนำและป้อน wp help config
ชื่อ wp config คำอธิบาย สร้างและอ่านไฟล์ wp-config.php เรื่องย่อ wp configคำสั่งย่อย create สร้างไฟล์ wp-config.php delete ลบค่าคงที่หรือตัวแปรเฉพาะออกจากไฟล์ wp-config.php edit เปิดตัวแก้ไขระบบเพื่อแก้ไขไฟล์ wp-config.php get รับค่าของค่าคงที่หรือตัวแปรเฉพาะที่กำหนดไว้ในไฟล์ wp-config.php มี ตรวจสอบว่ามีค่าคงที่หรือตัวแปรเฉพาะอยู่ในไฟล์ wp-config.php list รายการตัวแปร ค่าคงที่ และไฟล์รวมที่กำหนดไว้ในไฟล์ wp-config.php path รับพาธไปยังไฟล์ wp-config.php set ตั้งค่าของค่าคงที่หรือตัวแปรเฉพาะที่กำหนดไว้ในไฟล์ wp-config.php shuffle-salts รีเฟรชเกลือที่กำหนดไว้ในไฟล์ wp-config.php พารามิเตอร์สากล --เส้นทาง=
มีคำสั่งหลักมากกว่า 40 คำสั่งในการติดตั้ง WP-CLI หลัก ปลั๊กอินยอดนิยมบางตัว เช่น WooCommerce และ BuddyPress เพิ่มคำสั่งหลักของตัวเอง ดังนั้นการติดตั้ง WordPress ของคุณอาจมีมากกว่านี้ ในกรณีส่วนใหญ่ คุณสามารถค้นหาวิธีใช้คำสั่งได้ด้วยการป้อน wp help
ตามด้วยชื่อของคำสั่งหลัก
การทำความเข้าใจเล็กน้อยเกี่ยวกับวิธีการจัดกลุ่มจะช่วยในการเรียนรู้การใช้ WP-CLI เป็นที่น่าสังเกตว่าคำสั่ง WP-CLI มักใช้คำนามเอกพจน์ในคำสั่ง ตัวอย่างเช่น คำสั่งหลักสำหรับการจัดการผู้ใช้มีชื่อว่า wp user
แทนที่จะเป็น “wp users” ตราบใดที่คุณจำได้ คุณจะพบว่าสัญชาตญาณของคุณมักจะถูกต้อง คำสั่งสำหรับจัดการความคิดเห็นคือ wp comment
และ wp cron
เป็นคำสั่งที่คุณใช้สำหรับจัดการกำหนดการและกิจกรรมของ WP-Cron
คุณสามารถค้นหาแผ่นข้อมูลพร้อมคำสั่งหลักที่ใช้บ่อยที่สุดได้ที่ด้านล่างนี้
สั่งการ | คำอธิบาย |
---|---|
wp core | การทำงานกับการติดตั้ง WordPress |
wp config | การสร้างและการอ่าน wp-config.php |
ปลั๊กอิน wp | การจัดการปลั๊กอิน |
ธีม wp | การจัดการธีม |
ผู้ใช้ wp | การจัดการผู้ใช้ |
wp สื่อ | การทำงานกับรูปภาพและไฟล์สื่ออื่นๆ |
ช่วยด้วย wp | ความช่วยเหลือทั่วไป ตามด้วยคำสั่งสำหรับข้อมูลเพิ่มเติม |
ตัวเลือก wp | การตั้งค่าตัวเลือกไซต์ รวมถึงตัวเลือกปลั๊กอินและ WordPress |
เว็บไซต์ wp | การจัดการไซต์ในการติดตั้งแบบหลายไซต์ |
คำสั่งย่อย ให้ทิศทาง
ดังที่ฉันได้กล่าวไว้ก่อนหน้านี้ไม่มีคำสั่งใดที่ใช้งานได้จริง เราต้องระบุคำสั่งย่อยด้วยถ้าเราจะไปที่ใดก็ได้ ฉันขอแนะนำอย่างยิ่งให้ตั้งค่าการเสร็จสิ้นแท็บ นี้จะช่วยให้คุณเห็นคำสั่งย่อยได้อย่างง่ายดาย ตัวอย่างเช่น การใช้การเติมแท็บให้สมบูรณ์ เราจะเห็นคำสั่งย่อยสำหรับ plugin
:
$ wp plugin [TAB] activate get list toggle auto-updates install path uninstall deactivate is-active search update delete is-installed status verify-checksums
การกด Enter โดยไม่ระบุคำสั่งย่อยจะแจ้ง WP-CLI เพื่อนำเสนอความช่วยเหลือเพิ่มเติม:
$ wp plugin usage: wp plugin activate [<plugin>...] [--all] [--network] or: wp plugin auto-updates <command> or: wp plugin deactivate [<plugin>...] [--uninstall] [--all] [--network] or: wp plugin delete [<plugin>...] [--all] or: wp plugin get <plugin> [--field=<field>] [--fields=<fields>] [--format=<format>] or: wp plugin install <plugin|zip|url>... [--version=<version>] [--force] [--activate] [--activate-network] [--insecure] ....
สังเกตเห็นความแตกต่างในวิธีนำเสนอพารามิเตอร์ในข้อความช่วยเหลือด้านบนหรือไม่ บางส่วนถูกห่อหุ้มด้วยเครื่องหมาย < >
ส่วนอื่นๆ นำหน้าด้วยขีดกลาง --
นั่นไม่ใช่เรื่องบังเอิญ เป็นพารามิเตอร์ประเภทต่างๆ เราจะกลับไปที่นั้นในอีกสักครู่
WP-CLI ใช้งานได้ดีเพราะมักจะสามารถบอกคุณเพิ่มเติมเล็กน้อยเกี่ยวกับแต่ละคำสั่งย่อยและพารามิเตอร์ที่คาดหวัง สิ่งนี้มีความสอดคล้องกันมากในคำสั่ง WP-CLI ในตัวทั้งหมด เมื่อใดก็ตามที่คุณล้มเหลวในการพิมพ์คำสั่งแบบเต็มพร้อมพารามิเตอร์ที่คาดไว้ทั้งหมด มันจะบอกคุณเพิ่มเติมเกี่ยวกับสิ่งที่คาดหวัง
แผ่นโกง WP-CLI ของคำสั่งยอดนิยม
แผ่นโกงด้านล่างแสดงคำสั่งย่อยทั่วไปบางคำสั่งและคำสั่งหลักที่พวกเขาใช้ มีคำสั่งย่อยมากมายให้เลือกมากกว่าที่แสดงไว้ที่นี่ คำสั่งหลักบางคำสั่ง เช่น wp comment
มีคำสั่งย่อยมากกว่าหนึ่งโหล ในขณะที่คำสั่งอื่นๆ เช่น wp cron
มีเพียงไม่กี่คำสั่ง
WP Core
สั่งการ | คำอธิบาย |
---|---|
ดาวน์โหลดคอร์ wp | ดาวน์โหลดไฟล์หลักของ WordPress |
wp core ติดตั้ง | ติดตั้งเวิร์ดเพรส |
wp core update | อัปเดต WordPress เป็นเวอร์ชันใหม่กว่า |
การกำหนดค่า WP
สั่งการ | คำอธิบาย |
---|---|
wp config สร้าง | สร้างไฟล์ `wp-config.php` ใหม่ |
wp config แก้ไข | เปิดตัวแก้ไขระบบเพื่อแก้ไขไฟล์กำหนดค่า |
wp core update | แสดงตัวแปร ค่าคงที่ และไฟล์รวมที่กำหนดไว้ในไฟล์ `wp-config.php' |
ธีม WP
สั่งการ | คำอธิบาย |
---|---|
การติดตั้งธีม wp | ติดตั้งธีม |
เปิดใช้งานธีม wp | เปิดใช้งานธีม |
อัปเดตอัตโนมัติของธีม wp | จัดการการอัปเดตอัตโนมัติ |
ปิดการใช้งานธีม wp | ปิดใช้งานธีมที่เลือก |
ปลั๊กอิน WP
สั่งการ | คำอธิบาย |
---|---|
ติดตั้งปลั๊กอิน wp | ติดตั้งธีม |
เปิดใช้งานปลั๊กอิน wp | เปิดใช้งานปลั๊กอิน |
ปลั๊กอิน wp อัปเดตอัตโนมัติ | จัดการการอัปเดตอัตโนมัติ |
ปลั๊กอิน wp ปิดการใช้งาน | ปิดใช้งานปลั๊กอินที่เลือก |
พารามิเตอร์และสวิตช์
นอกเหนือจากคำสั่งพาเรนต์และคำสั่งย่อย คำสั่งส่วนใหญ่จำเป็นต้องมี พารามิเตอร์ อย่างน้อยหนึ่งตัวจึงจะสามารถทำบางสิ่งที่เป็นประโยชน์ได้ ตัวอย่างเช่น หากคุณต้องการติดตั้งปลั๊กอิน คุณต้องระบุปลั๊กอินที่จะติดตั้ง การเปิดใช้งานหรือการลบปลั๊กอินก็เหมือนกัน

โดยพื้นฐานแล้วมีพารามิเตอร์สามประเภทที่คุณจะใช้กับ WP-CLI ได้แก่ พารามิเตอร์ที่เรียงลำดับ พารามิเตอร์ที่มีชื่อ และสวิตช์
พารามิเตอร์ที่สั่ง
หากคำสั่งต้องการพารามิเตอร์ปกติมากกว่าหนึ่งพารามิเตอร์ จะต้องได้รับคำสั่งอย่างถูกต้องเสมอเพื่อให้คำสั่งทำงาน นี่คือเหตุผลที่เรียกว่า Parameter ที่สั่ง พวกเขาจะถูกคั่นด้วยช่องว่างเดียวเสมอ หากค่าพารามิเตอร์เองมีช่องว่าง จะต้องล้อมรอบด้วยเครื่องหมายคำพูด
ในข้อความช่วยเหลือสำหรับคำสั่ง พารามิเตอร์ที่เรียงลำดับจะถูกล้อมรอบด้วย <
และ >
ในตัวอย่างต่อไปนี้ของการพยายามใช้ wp post get
โดยไม่มีพารามิเตอร์ใด ๆ เราจะเห็นว่า id
เป็นพารามิเตอร์ที่เรียงลำดับเพราะอยู่ใน <
และ >
$ wp post get usage: wp post get <id> [--field=<field>] [--fields=<fields>] [--format=<format>]
พารามิเตอร์ที่มีชื่อ
WP-CLI ยังใช้งานได้ดีกับ พารามิเตอร์ที่มีชื่อ สิ่งเหล่านี้สามารถให้ในลำดับใดก็ได้ พารามิเตอร์ที่มีชื่อจะรับรู้โดยเครื่องหมายขีดคั่นคู่ก่อนชื่อและการมีอยู่ของเครื่องหมายเท่ากับระหว่างชื่อและค่า
ตัวอย่างเช่น เมื่อดูข้อความช่วยเหลือสำหรับ wp post get
ด้านบน เราจะเห็นว่าพารามิเตอร์ format
และ fields
นำหน้าด้วยเครื่องหมายขีดคั่นคู่ นั่นเป็นวิธีที่เรารู้ว่ามีชื่อพารามิเตอร์สำหรับคำสั่งนี้
การสั่งซื้อ ไม่ สำคัญ:
# This will get the the title field for post id 1 in JSON format $ wp post get 1 --fields=title --format=json # This is the same command, order of named parameters doesn't matter: $ wp post get 1 --format=json --fields=title # This is also exactly the same, you can put named parameters before the ordered ones: $ wp post get --format=json --fields=title 1
สวิตช์
นอกจากนี้ยังมีชื่อพารามิเตอร์ที่ใช้เพื่อระบุค่าประเภทจริง/เท็จเท่านั้น สิ่งเหล่านี้เรียกว่า สวิตช์ และไม่ต้องการค่าที่ระบุ หากคุณเพิ่มลงในบรรทัดคำสั่ง หมายความว่า "จริง" หากคุณละเว้น แสดงว่าเป็น "เท็จ"
บางทีนี่อาจอธิบายได้ดีที่สุดด้วยตัวอย่างบางส่วน:
# Passing "hello-dolly" as regular ordered parameter $ wp plugin activate hello-dolly # Passing a regular ordered parameter with spaces requires quotes $ wp plugin search "WP Offload Media" # Passing the value 'json' to the named parameter 'format' $ wp plugin list --format=json # Setting the 'quiet' switch to true $ wp plugin activate hello-dolly --quiet
ไม่ซับซ้อนใช่มั้ย นี่เป็นบรรทัดฐานของเครื่องมือบรรทัดคำสั่งค่อนข้างมาก แต่ขอเพิ่มรายละเอียดอีกเล็กน้อย
อาร์กิวเมนต์ที่มีชื่อทั่วโลก
อาร์กิวเมนต์ที่มีชื่อสามารถเป็นแบบโกลบอลในแง่ที่คำสั่ง WP-CLI จำนวนมากใช้คำสั่งเหล่านี้ และจะมีพฤติกรรมเหมือนกันทุกครั้งเมื่อใช้
อาร์กิวเมนต์ที่มีชื่ออื่นๆ เหมาะสมกับคำสั่งเฉพาะเพียงคำสั่งเดียว อาร์กิวเมนต์ที่มีชื่อประเภทนี้เป็นเพียงพารามิเตอร์ที่มีชื่อเท่านั้น ในตัวอย่างข้างต้น พารามิเตอร์ --quiet
เป็นแบบโกลบอล เนื่องจากมีผลกับคำสั่งทั้งหมดในลักษณะเดียวกัน แต่พารามิเตอร์ --format
ไม่ถือเป็นค่าสากล เนื่องจากไม่สมเหตุสมผลสำหรับคำสั่งทั้งหมด
วิธีใช้คำสั่ง WP-CLI
ตัวอย่างเช่น มาดูวิธีใช้ wp-plugin
เพื่อติดตั้งและเปิดใช้งานปลั๊กอิน WordPress นอกเหนือจากการจัดการผู้ใช้แล้ว นี่เป็นหนึ่งในพื้นที่แรกๆ ที่ผู้ใช้ WP-CLI ใหม่ต้องการเรียนรู้ แม้ว่าคุณจะไม่สนใจการจัดการปลั๊กอินจากบรรทัดคำสั่งมากนัก แต่ก็ควรอ่านส่วนนี้เพื่อเตรียมพร้อมสำหรับการทำงานกับ WP-CLI
การติดตั้งปลั๊กอินใหม่จากที่เก็บ WordPress นั้นตรงไปตรงมามาก คุณต้องมีคำสั่งหลัก ( wp plugin
) คำสั่งย่อย ( install
) และพารามิเตอร์ที่สั่ง (กระสุนอย่างเป็นทางการของปลั๊กอิน) เพื่อติดตั้งปลั๊กอิน การเปิดใช้งานปลั๊กอินใช้คำสั่งที่คล้ายกัน แต่มีคำสั่งย่อยอื่น ( activate
)
นำทุกอย่างมารวมกันแล้วคุณควรเห็นสิ่งนี้:
# Installing a plugin $ wp plugin install hello-dolly Installing Hello Dolly (1.7.2) Downloading installation package from https://downloads.wordpress.org/plugin/hello-dolly.1.7.2.zip... The authenticity of hello-dolly.1.7.2.zip could not be verified as no signature was found. Unpacking the package... Installing the plugin... Plugin installed successfully. Success: Installed 1 of 1 plugins. $ wp plugin activate hello-dolly Plugin 'hello-dolly' activated. Success: Activated 1 of 1 plugins.
อย่างที่คุณเห็น การติดตั้งและเปิดใช้งานปลั๊กอินเป็นสองสิ่งที่แยกจากกันใน WP-CLI เช่นเดียวกับเมื่อคุณติดตั้งปลั๊กอินโดยใช้เว็บอินเทอร์เฟซ แต่การติดตั้งและเปิดใช้งานปลั๊กอินโดยตรงนั้นเป็นเรื่องปกติที่ WP-CLI มีวิธีที่จะทำทั้งสองอย่างพร้อมกัน:
# Installing AND activating a plugin in one go $ wp plugin install --activate hello-dolly
ส่วนที่ยุ่งยากอย่างหนึ่งคือการค้นหากระสุนที่เหมาะสมสำหรับปลั๊กอินที่คุณต้องการ ปลั๊กอินทั้งหมดถูกระบุโดยกระสุนอย่างเป็นทางการ แต่ในหลายกรณี ตัวบุ้งไม่เหมือนกับชื่อทางการของปลั๊กอินจากระยะไกล ปลั๊กอิน Yoast SEO ที่ได้รับความนิยมอย่างมากมี slug wordpress-seo
กระสุนสำหรับปลั๊กอิน WP Offload Media ของเราคือ amazon-s3-and-cloudfront
Slug ถูกกำหนดเมื่อปลั๊กอินได้รับการยอมรับในที่เก็บปลั๊กอินของ WordPress เป็นครั้งแรก และเป็นเพียงตัวระบุที่ไม่ซ้ำกันเท่านั้น แม้ว่าชื่อปลั๊กอินจะเปลี่ยนไป แต่กระสุนก็ยังเหมือนเดิม คุณสามารถไปที่หน้าเว็บ repo ของปลั๊กอิน ค้นหาปลั๊กอินและดูเส้นทางใน URL ได้เสมอ:
ใช้งานได้ แต่ไม่มีกลเม็ดเด็ดพรายและนำคุณออกจากเทอร์มินัล นี่เป็นวิธีที่เหมาะสมในการใช้คำสั่งย่อย search
ของ WP-CLI:
wp plugin search "wp offload media" --per-page=1 --fields=name,slug Success: Showing 1 of 66 plugins. +-----------------------------------------------------------------------+--------------------------+ | name | slug | +-----------------------------------------------------------------------+--------------------------+ | WP Offload Media Lite for Amazon S3, DigitalOcean Spaces, and Google | amazon-s3-and-cloudfront | | Cloud Storage | | +-----------------------------------------------------------------------+--------------------------+
หากคุณอยากเรียนรู้เพิ่มเติมเกี่ยวกับการจัดการปลั๊กอิน เราจะเจาะลึกทุกแง่มุมที่สำคัญของคำสั่ง wp plugin
ในโพสต์เกี่ยวกับ WP-CLI ในภายหลัง สำหรับตอนนี้ เรากำลังใช้มันเพื่อสาธิตการใช้พารามิเตอร์
ห่อ
ประโยชน์ที่ใหญ่ที่สุดที่คุณจะเห็นจากการผสาน WP-CLI เข้ากับเวิร์กโฟลว์การพัฒนาของคุณ มีแนวโน้มว่าจะช่วยให้คุณทำงานได้เร็วยิ่งขึ้น แทบทุกอย่างที่คุณสามารถทำได้จากผู้ดูแลระบบ WordPress สามารถทำได้โดยใช้เวลาน้อยลงโดยใช้บรรทัดคำสั่ง
เมื่อคุณรู้พื้นฐานแล้ว คุณสามารถพัฒนา WP-CLI ให้ดียิ่งขึ้นด้วยรายการแพ็คเกจ WP-CLI ที่เราขาดไม่ได้
การทำความเข้าใจว่าคำสั่ง คำสั่งย่อย และพารามิเตอร์มีโครงสร้างอย่างไรเป็นกุญแจสำคัญในการทำความคุ้นเคยกับ WP-CLI ความตั้งใจของฉันคือการมอบความรู้พื้นฐานที่จำเป็นสำหรับการเริ่มต้นการทดลองด้วยตัวเอง หากคุณมีคำถามใดๆ เกี่ยวกับวิธีการจัดโครงสร้างคำสั่ง WP-CLI พารามิเตอร์ หรือสิ่งอื่นๆ ที่เกี่ยวข้องกับ WP-CLI โปรดแจ้งให้เราทราบในความคิดเห็น