Detectar se o WP está sendo executado no WP-CLI

16

Eu uso a maravilhosa ferramenta WP-CLI . Devido à dependência de variáveis de ambiente do Apache para um caso de uso específico, preciso ativar um pouco de código para ser executado apenas quando estiver executando sob o WP-CLI. Como posso detectar se o WP está sendo executado no WP-CLI?

Neste caso específico, eu poderia verificar a presença das variáveis de ambiente do Apache em questão. No entanto, gostaria de saber o método canônico mais geral a ser verificado. Obrigado.

    
por dotancohen 10.05.2016 / 11:25

2 respostas

18

No php/wp-cli.php encontramos estas linhas:

// 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 você possa verificar se WP_CLI ou WP_CLI_VERSION estão definidos.

    
por birgire 10.05.2016 / 11:45
16

A verificação canônica para WP-CLI usada na maioria dos plugins e especificamente mencionada nos documentos é verificar WP_CLI é definido e definido como verdadeiro:

if ( defined( 'WP_CLI' ) && WP_CLI ) {
    // Do WP-CLI-specific things.
}
    
por Ryan McCue 10.05.2016 / 13:08

Tags