私はWP-CLIを使ってクライアントのプラグイン、テーマ、そしてwpコアを更新しています。
WP-Coreをアップデートする
find /home/*/public_html -name "wp-admin" -execdir /home/wp core update --allow-root \;
プラグインを更新する
find /home/*/public_html -name "wp-admin" -execdir /home/wp plugin update-all --allow-root \;
テーマを更新する
find /home/*/public_html -name "wp-admin" -execdir /home/wp theme update-all --allow-root \;
すべてうまくいっていますが、/root/wp-cli/.cache
に保存したくないので、WP-CLI用のCACHEフォルダを変更したいだけです。
Open base dirを有効にしたため、実際には何も格納されていません。どのようにしてwp cliのキャッシュフォルダの場所を変更できますか?構文はありますか?ドキュメントが見つかりません
PHP Warning: file_exists(): open_basedir restriction in effect. File(/root/.wp-cli/cache/) is not within the allowed path(s): (/home:/tmp:/opt/cpanel/composer/bin/composer) in phar:///home/wp/php/WP_CLI/FileCache.php on line 261
私は正直にキャッシュフォルダが何のために使われるのか知りません、しかしwp cliがそれを使うことができないので私は何かが失敗することを恐れています、しかし今のところそれはしませんでした。
環境変数 を使って変更することができます。
WP_CLI_CACHE_DIR
WP_CLI::get_cache()
メソッド( src )に含まれているので:
$dir = getenv( 'WP_CLI_CACHE_DIR' ) ? : "$home/.wp-cli/cache";
使用例についてはissue #1848 - 共有キャッシュディレクトリを複数のインストールに使用をご覧ください。
make.wordpress.org のWP-CLIハンドブックには、WP-CLIで使用される環境変数の list があります。
これは実際に私がこれをやってしまった方法です、これは私がcPanelサーバーのテーマ、プラグインとwpコアを更新するために私が書いたスクリプトです
#!/bin/bash
rm -rf /home/wp
wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -O /home/wp
chmod +x /home/wp
sleep 5
Red='\033[0;31m'
Color_Off='\033[0m'
echo -e "$Red Updating WP core $Color_Off";
for i in `ls /var/cpanel/users/`; do Sudo -H -u $i cp /home/wp /home/$i/wp && Sudo -H -u $i find /home/$i/public_html -name 'wp-admin' -execdir /usr/local/bin/php /home/$i/wp core update \; && Sudo -H -u $i rm -rf /home/$i/wp ; done
echo -e "$Red Updating plugins $Color_Off";
for i in `ls /var/cpanel/users/`; do Sudo -H -u $i cp /home/wp /home/$i/wp && Sudo -H -u $i find /home/$i/public_html -name 'wp-admin' -execdir /usr/local/bin/php /home/$i/wp plugin update-all \; && Sudo -H -u $i rm -rf /home/$i/wp ; done
echo "$Red Updating themes $Color_Off";
for i in `ls /var/cpanel/users/`; do Sudo -H -u $i cp /home/wp /home/$i/wp && Sudo -H -u $i find /home/$i/public_html -name 'wp-admin' -execdir /usr/local/bin/php /home/$i/wp theme update-all \; && Sudo -H -u $i rm -rf /home/$i/wp ; done