WordPress 小版本更新会在后台自动进行,而大版本需要手动更新。如果你管理的站点只有一两个,WordPress 有更新的时候,登录到后台,直接在后台更新即可,花不了多长时间。可是如果你的服务器上有几十个甚至数百个站点,也要一个一个登录后台去更新吗?这么多站点,光点鼠标手都要点疼了,这实在太蛋疼了。
其实大多数 WordPress 用户都不会遇到这个问题的,我也是今天有个朋友在 WordPress 问我,才意识到这真是个问题,其实这不光是 WordPress 的问题,不管网站是什么程序做的,数量多了,都会遇到这个问题。
其实 WordPress 版本升级主要是升级的 wp-admin
和 wp-includes
、和站点根目录下除了 wp-config.php
之外的其他文件。事实上,WordPress 在后台更新的时候,只会下载已经更新的文件,没有更新的文件不会动,明确了这一点,直接使用 Linux 命令,查找所有 WordPress 站点的根目录,然后把更新过的文件覆盖过去就可以了。
find /home/wwwroot -mindepth 1 -maxdepth 1 -type d| xargs -n 1 cp /tmp/wp/* -frap
上面命令中,/home/wwwroot
是存放所有 WordPress 站点的根目录,/tmp/wp
里面存放的是WordPress 需要更新的文件,为了方便,可以直接下载最新版本的 WordPress 文件,然后把 wp-content
目录删除掉,因为这个目录里面存放的是主题、插件、用户上传的数据等站点自定义文件,覆盖过去可能会导致站点文件丢失。
注意!此操作能力非常强大,尝试进行此操作前,请先进行备份,或者在测试服务器上进行测试。