关于OP发布的代码的一些注释:
我不会自己作为root用户进行更新-我使用“sudo-u webuser/usr/local/bin/wp…”而不是命令。如果您让每个VirtualHost作为不同的用户运行(针对Apache的httpd.itk),那么您还需要从Web配置中选择该用户来运行wp。
所有WP更新(无论是留给自动WP更新还是通过WP-CLI完成)的最大缺点是,如果更新失败,没有自动DB/Web备份或自动回滚。
这就是为什么我必须编写一个非常庞大的脚本,以“安全的方式”对我管理的100多个站点进行WP更新的原因-它进行Web/DB备份,加载更新前和更新后检查,如果更新后检查失败,它会立即恢复Web/DB。我还添加了一些功能,比如能够阻止已知有问题插件/主题的更新。一个最大的优点是,我可以准确地安排何时更新我们的开发、UAT和live站点(也就是说,不需要等到更新完成后再进行)。