Cum să detectezi dacă WordPress rulează sub WP-CLI

10 mai 2016, 12:25:24
Vizualizări: 14.1K
Voturi: 30

Folosesc minunatul instrument WP-CLI. Datorită dependenței de variabilele de mediu Apache pentru un caz specific, trebuie să activez o porțiune de cod să ruleze doar când rulez sub WP-CLI. Cum pot detecta dacă WP rulează sub WP-CLI?

În acest caz specific, aș putea verifica prezența variabilelor de mediu Apache în discuție. Totuși, aș dori să știu metoda mai generală și canonică de verificare. Mulțumesc.

0
Toate răspunsurile la întrebare 2
0
41

Verificarea canonică pentru WP-CLI, care este utilizată în majoritatea plugin-urilor și este menționată explicit în documentație, este verificarea dacă constanta WP_CLI este definită și setată pe true:

if ( defined( 'WP_CLI' ) && WP_CLI ) {
    // Fă lucruri specifice WP-CLI.
}
10 mai 2016 14:08:58
4
40

În fișierul php/wp-cli.php găsim următoarele linii:

// Poate fi folosit de plugin-uri/teme pentru a verifica dacă WP-CLI rulează sau nu
define( 'WP_CLI', true );
define( 'WP_CLI_VERSION', trim( file_get_contents( WP_CLI_ROOT . '/VERSION' ) ) );
define( 'WP_CLI_START_MICROTIME', microtime( true ) );

astfel încât poți verifica dacă WP_CLI sau WP_CLI_VERSION sunt definite.

10 mai 2016 12:45:51
Comentarii

WP_CLI este constanta preferată pentru verificare

Daniel Bachhuber Daniel Bachhuber
10 mai 2016 14:55:10

Mulțumesc pentru comentariu - da și de asemenea mult mai scurt, doar mă întrebam despre alte posibilități ;-) @DanielBachhuber

birgire birgire
10 mai 2016 15:27:41

@dotancohen ar trebui să iei în considerare acceptarea răspunsului dat de Ryan McCue, deoarece acesta arată în mod explicit cum să verifici.

birgire birgire
10 mai 2016 17:20:29

@birgire, te pot ruga să arunci o privire la o întrebare legată de câmpurile personalizate aici: https://wordpress.stackexchange.com/questions/265852/set-and-unset-the-custom-field-value ?

Istiaque Ahmed Istiaque Ahmed
4 mai 2017 22:36:05