Detectar si WP se está ejecutando bajo WP-CLI


22

Yo uso la maravillosa herramienta WP-CLI . Debido a la dependencia de las variables de entorno de Apache para un caso de uso específico, necesito habilitar un bit de código para que se ejecute solo cuando se ejecuta bajo WP-CLI. ¿Cómo puedo detectar si WP se ejecuta bajo WP-CLI?

En este caso específico, podría verificar la presencia de las variables de entorno de Apache en cuestión. Sin embargo, me gustaría saber el método canónico más general para verificar. Gracias.

Respuestas:


24

Dentro del php/wp-cli.phpencontramos estas líneas:

// 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 ) );

para que pueda verificar si está WP_CLIo WP_CLI_VERSIONestá definido.


77
WP_CLIes la constante preferida para verificar
Daniel Bachhuber

Gracias por comentar: sí y también mucho más corto, solo me preguntaba sobre otras posibilidades ;-) @DanielBachhuber
birgire

@dotancohen, debería considerar aceptar la respuesta de Ryan McCue, ya que muestra explícitamente cómo verificarla.
Birgire

@birgire, ¿puedo pedirle que eche un vistazo a una pregunta relacionada con un campo personalizado aquí: wordpress.stackexchange.com/questions/265852/… ?
Istiaque Ahmed

26

La verificación canónica para WP-CLI utilizada en la mayoría de los complementos y mencionada específicamente en los documentos es verificar WP_CLIy definir en true:

if ( defined( 'WP_CLI' ) && WP_CLI ) {
    // Do WP-CLI-specific things.
}
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.