ตรวจสอบว่า WP ทำงานภายใต้ WP-CLI


22

ฉันใช้เครื่องมือWP-CLI ที่ยอดเยี่ยม เนื่องจากการพึ่งพาตัวแปรสภาพแวดล้อม Apache สำหรับกรณีการใช้งานเฉพาะฉันต้องเปิดใช้งานโค้ดจำนวนเล็กน้อยเพื่อรันเฉพาะเมื่อทำงานภายใต้ WP-CLI ฉันจะตรวจสอบว่า WP ทำงานภายใต้ WP-CLI ได้อย่างไร

ในกรณีเฉพาะนี้ฉันสามารถตรวจสอบว่ามีตัวแปรสภาพแวดล้อม Apache ในคำถามหรือไม่ อย่างไรก็ตามฉันต้องการทราบวิธีการตรวจสอบทั่วไปที่มากขึ้น ขอขอบคุณ.

คำตอบ:


24

ภายในphp/wp-cli.phpเราพบบรรทัดเหล่านี้:

// Can be used by plugins/themes to check if WP-CLI is running or not
define( 'WP_CLI', true );
define( 'WP_CLI_VERSION', trim( file_get_contents( WP_CLI_ROOT . '/VERSION' ) ) );
define( 'WP_CLI_START_MICROTIME', microtime( true ) );

เพื่อให้คุณสามารถตรวจสอบว่าWP_CLIหรือWP_CLI_VERSIONมีการกำหนด


7
WP_CLIเป็นค่าคงที่ต้องการตรวจสอบ
Daniel Bachhuber

ขอบคุณสำหรับการแสดงความคิดเห็น - ใช่และสั้นกว่ามากเพียงแค่สงสัยเกี่ยวกับความเป็นไปได้อื่น ๆ ;-) @DanielBachhuber
birgire

@dotancohen คุณควรพิจารณายอมรับคำตอบของ Ryan McCue แทนเนื่องจากจะแสดงวิธีการตรวจสอบอย่างชัดเจน
Birgire

@ Birgire ฉันขอให้คุณดูคำถามที่เกี่ยวข้องกับฟิลด์ที่กำหนดเองได้ที่นี่: wordpress.stackexchange.com/questions/265852/ ...... ?
Istiaque Ahmed

26

การตรวจสอบ canonical สำหรับ WP-CLI ที่ใช้ในปลั๊กอินส่วนใหญ่และกล่าวถึงโดยเฉพาะในเอกสารคือการตรวจสอบWP_CLIมีการกำหนดและตั้งค่าเป็นจริง:

if ( defined( 'WP_CLI' ) && WP_CLI ) {
    // Do WP-CLI-specific things.
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.