Rileva se WP è in esecuzione in WP-CLI


22

Uso il meraviglioso strumento WP-CLI . A causa della dipendenza dalle variabili di ambiente Apache per un caso d'uso specifico, è necessario abilitare l'esecuzione di un po 'di codice solo durante l'esecuzione in WP-CLI. Come posso rilevare se WP è in esecuzione in WP-CLI?

In questo caso specifico ho potuto verificare la presenza delle variabili di ambiente Apache in questione. Tuttavia, vorrei conoscere il metodo canonico più generale da verificare. Grazie.

Risposte:


24

All'interno del php/wp-cli.phptroviamo queste righe:

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

così puoi verificare se WP_CLIo WP_CLI_VERSIONsono definiti.


7
WP_CLIè la costante preferita da controllare
Daniel Bachhuber,

Grazie per il commento - sì e anche molto più breve, mi chiedevo solo altre possibilità ;-) @DanielBachhuber
birgire

@dotancohen invece dovresti considerare di accettare la risposta di Ryan McCue, poiché mostra esplicitamente come controllarla.
birgire,

@birgire, posso chiederti di dare un'occhiata a una domanda sul campo personalizzata qui: wordpress.stackexchange.com/questions/265852/… ?
Istiaque Ahmed,

26

Il controllo canonico per WP-CLI utilizzato nella maggior parte dei plugin e specificamente menzionato nei documenti è che il controllo WP_CLIè definito e impostato su true:

if ( defined( 'WP_CLI' ) && WP_CLI ) {
    // Do WP-CLI-specific things.
}
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.