WP-CLI + Linux Shell 一键更新、修改 Google Captcha 插件

我曾写过 在中国大陆使用 Google Captcha 插件 的方法,其中的重点是将 js 引用地址从 google 换成 captcha,以便资源能够加载成功。

不过步骤有点麻烦——首先要登录网站后台,更新插件(还可能更新失败),之后停用插件,进入插件编辑页面,将所有地址进行替换,最后重新启用插件。时间就是金钱,如果某段时期插件更新比较频繁,这样操作下来简直要爆炸。如果有多个站点,那会让人想死的。

正巧我还写过一篇文章提供 WP 更新失败的解决方法:《国内服务器 WordPress 更新失败该如何解决》,里面提到了一个 WP 管理神器—— WP-CLI。我们可以借助这个工具编写脚本,一键式更新、修改插件。

本文操作的前提是能够直接访问服务器,并且运行 Linux 系统,不适用于虚拟主机。阿里云、腾讯云服务器有免费试用和学生 10元/月 的活动,点此查看

操作步骤

首先安装 WP-CLI 命令行工具:安装 WP-CLI

假设操作系统为 CentOS,WP 目录在 /www/idcbuy.net :

#进入WP目录
cd /www/idcbuy.net

#创建脚本文件
vi gcapt.sh

编辑脚本文件,按 i 进入编辑模式:

#首先,更新插件
wp plugin update --all

#假设运行权限是root,上一条命令就是
wp plugin update --all --allow-root

#接着修改插件信息
#先获取文件内容
temp=$(cat ./wp-content/plugins/google-captcha/google-captcha.php)

#替换内容并写入文件
echo "${temp//www.google.com/www.recaptcha.net}" > ./wp-content/plugins/google-captcha/google-captcha.php

按 Esc 键退出编辑模式,输入 :wq 按回车,保存退出。接着给文件添加执行权限:

chmod +x gcapt.sh

以后需要更新 Google Captcha 插件时,只需要进入 WP 目录,运行脚本就行了。

./gcapt.sh

脚本运行时有回显信息,如果更新失败,重新运行脚本即可。自动化操作解放生产力,在云服务越来越便宜的现在,如果要发掘服务器的能力,我不是很建议再购买虚拟主机,阿里云ECS腾讯云CVM 都是理想的选择。