--path
パラメータを追加するとき、WP-cliは動作しないようです
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`.
Dirにcd
してからパスを指定せずにコマンドを実行するとうまくいきます。
wp-cli 0.25があります
アップデート --debug
フラグを追加するときの追加情報
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)
誰かが私が間違っていることの手がかりを得ましたか?
実行しようとしているかのようです。
wp plugin status --path=$(/home/me/domains/example.com/public_html)
バッククォートの内側にあるものが評価されるからです。
こちら コマンドラインでバッククォートを使うことについての良い読み物。
私が引用してみましょう @rozcietrzewiacz :
バックティックは引用符ではありません 、それは非常に特別な意味を持ちます。バッククォートの間に入力したものはすべてメインコマンドの前にシェルによって評価(実行)されます[...]
代替案:
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'
wp-skeleton セットアップを使用するときは、wp/
ファイルを含むその上のフォルダーではなく、wp-config.php
コアフォルダーを指す必要があります。
Runner クラス内に、
/**
* Do WordPress core files exist?
*
* @return bool
*/
private function wp_exists() {
return is_readable( ABSPATH . 'wp-includes/version.php' );
}
そしてABSPATH
をで設定したとき
--path=/home/me/domains/example.com/public_html/
私たちが使っているように見えます。
/**
* 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 );
}
その後:
is_readable( '/home/me/domains/example.com/public_html/wp-includes/version.php' )
wp-skeleton setupの場合、コアディレクトリは次のようになるため、falseになります。
/home/me/domains/example.com/public_html/wp/
このテストは必要ですが十分ではありません。他にもテストがあります。 Runner::find_wp_root()
メソッド.
OPが次の場所にある場合に機能する理由
/home/me/domains/example.com/public_html/
index.php
ファイルの内容をスキャンする Runner::extract_subdir_path()
メソッドが原因である可能性があります。
$index_code = file_get_contents( $index_path );
if ( !preg_match(
'|^\s*require\s*\(?\s*(.+?)/wp-blog-header\.php([\'"])|m',
$index_code,
$matches
)
) {
return false;
}
wp-blog-header.php
ファイルが配置されているサブディレクトリを取得し、それを$wp_path
として設定します。