Изменение папки кэша командной строки WP
Как очень заинтересованный владелец хостинговой компании, я использую WP-CLI для обновления плагинов, тем и ядра wp моих клиентов.
Обновление WP-ядра
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 \;
Все работает очень хорошо, но я хочу просто изменить папку КЭША для WP-CLI, так как я не хочу, чтобы она хранилась в /root/wp-cli/.cache
На самом деле там ничего не хранится, потому что я включил Open base dir, как я могу изменить расположение папки кэша для интерфейса командной строки wp? есть ли синтаксис? Я не могу найти никаких документов по этому поводу
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 не может ее использовать, я просто боюсь, что что-то выйдет из строя, но пока этого не произошло.
2 answers
Вы можете попытаться изменить его с помощью переменной среды :
WP_CLI_CACHE_DIR
Как мы включили его в метод WP_CLI::get_cache()
(src):
$dir = getenv( 'WP_CLI_CACHE_DIR' ) ? : "$home/.wp-cli/cache";
Вы также можете проверить проблему #1848 - Используйте каталог общего кэша для нескольких установок для примеров использования.
В Руководстве WP-CLI по make.wordpress.org , у нас есть список переменных среды, используемых WP-CLI.
На самом деле именно так я и закончил, это сценарий, который я написал для обновления тем, плагинов и ядра wp на серверах cPanel
#!/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