自动升级文档根目录下所有 WordPress 实例的最短方法 (>=4.7.x)

自动升级文档根目录下所有 WordPress 实例的最短方法 (>=4.7.x)

我有一个 Ubuntu 16.04 Nginx 环境,其中有一些最小的 WordPress 站点(几乎全部带有最多 5 个传统插件、10 个页面、10 个图像和一个仅发送文本数据的简单联系表单)。

cron_daily.sh我每天使用以下三个循环执行脚本,从crontab到更新文档根目录下的所有 WordPress 应用程序。该脚本使用WP-CLI外壳扩展。

for dir in ${drt}/*/; do cd ${dir} && wp plugin update --all --allow-root; done
for dir in ${drt}/*/; do cd ${dir} && wp core update --allow-root; done
for dir in ${drt}/*/; do cd ${dir} && wp theme update --all --allow-root; done

${drt}是文档根目录。它已经永久对外宣布,其文件来源。


我正在寻找一种方法将这三个循环的行为统一到一个片段中。

这种模式看起来很有前途,并且基于例子:

for dir in ${drt}/*/; do
    if pushd ${dir}; then
        wp plugin update --all --allow-root
        wp core update --allow-root
        wp theme update --all --allow-root
        popd
    fi
done

这是可以使用的最短模式吗?你会怎么做?

答案1

为什么要进行三次相同的循环而不是像您的示例中那样进行一次循环?

乍一看,我不明白这怎么会变得更短——也不明白为什么它应该如此。

如果有的话,通过改进 WordPress 的检测(如果需要),脚本可以变得更好(从而更长)。另外,我可能也会运行wp language core update以确保翻译是最新的。

相关内容