WP cli – Pfad scheint nicht zu funktionieren

WP-cli scheint nicht zu funktionieren, wenn ein --path Parameter hinzugefügt wird

 me@host:~$ wp plugin status --path=`/home/me/domains/example.com/public_html` -bash: /home/me/domains/example.com/public_html: is a directory Error: This does not seem to be a WordPress install. Pass --path=`path/to/wordpress` or run `wp core download`. 

Wenn ich auf das Verzeichnis cd und dann den Befehl ohne den Pfad ausführen, funktioniert es.
Ich habe wp-cli 0.25

Aktualisieren
Zusätzliche Informationen beim Hinzufügen einer --debug Flagge

 Debug (bootstrap): No readable global config found (0.031s) Debug (bootstrap): No project config found (0.032s) Debug (bootstrap): No package autoload found to load. (0.39s) Debug (bootstrap): ABSPATH defined: /home/me/domains/example.com/public_html/ (0.39s) 

Hat jemand eine Ahnung, was ich falsch mache?

Solutions Collecting From Web of "WP cli – Pfad scheint nicht zu funktionieren"

Es ist, als ob du versuchen würdest zu rennen:

 wp plugin status --path=$(/home/me/domains/example.com/public_html) 

Denn was in den Backticks steckt, wird bewertet.

Hier ist eine gute Lektüre über die Verwendung von Backticks in der Befehlszeile.

Lassen Sie mich @rozcietrzewiacz zitieren:

Backtick ist kein Anführungszeichen , es hat eine ganz besondere Bedeutung. Alles, was Sie zwischen Backticks eingeben, wird von der Shell vor dem Hauptbefehl ausgewertet (ausgeführt).

Alternativen:

 wp plugin status --path=/home/me/domains/example.com/public_html wp plugin status --path="/home/me/domains/example.com/public_html" wp plugin status --path='/home/me/domains/example.com/public_html' 

Wenn ich das wp-skeleton setup benutze, muss ich auf den wp/ core Ordner zeigen, nicht auf den Ordner darüber, der die wp-config.php Datei enthält.

Aktualisieren:

Innerhalb der Runner- class haben wir:

 /** * Do WordPress core files exist? * * @return bool */ private function wp_exists() { return is_readable( ABSPATH . 'wp-includes/version.php' ); } 

und wenn wir ABSPATH mit setzen

 --path=/home/me/domains/example.com/public_html/ 

Es sieht so aus, als würden wir:

 /** * Set WordPress root as a given path. * * @param string $path */ private static function set_wp_root( $path ) { define( 'ABSPATH', rtrim( $path, '/' ) . '/' ); WP_CLI::debug( 'ABSPATH defined: ' . ABSPATH, 'bootstrap' ); $_SERVER['DOCUMENT_ROOT'] = realpath( $path ); } 

und dann:

  is_readable( '/home/me/domains/example.com/public_html/wp-includes/version.php' ) 

wird falsch, weil das coreverzeichnis beim Setup von wp-skeleton wie folgt lautet:

 /home/me/domains/example.com/public_html/wp/ 

Dieser Test ist notwendig, aber nicht ausreichend. Es gibt andere Tests, zB die Runner::find_wp_root() Methode.

Der Grund, warum es funktioniert, wenn sich das OP in folgendem befindet:

 /home/me/domains/example.com/public_html/ 

könnte an der Runner::extract_subdir_path() -Methode liegen, die den Inhalt der index.php Datei mit folgenden Runner::extract_subdir_path() durchsucht:

 $index_code = file_get_contents( $index_path ); if ( !preg_match( '|^\s*require\s*\(?\s*(.+?)/wp-blog-header\.php([\'"])|m', $index_code, $matches ) ) { return false; } 

Um das Unterverzeichnis zu erhalten, in dem sich die Datei wp-blog-header.php befindet, und legen Sie es als $wp_path .