关闭 WordPress 自动更新的 3 种方法

WordPress 内核、主题、插件的更新都很频繁,一旦更新,我们修改过的代码就会消失(如何解决?),而且受中国网络环境的影响,很多时候更新都无法成功。

如此一来,网站后台不断地检测更新并尝试安装,会导致网站性能下降。所以我们平时可以手动更新(例如使用 WP-CLI),将自动更新关闭。这里有 3 种方法,大家根据自己需求选择。

修改 wp-config.php

编辑 WordPress 根目录下地 wp-config.php 文件,在末尾加入:

/** 关闭WordPress自动更新升级 */
define('AUTOMATIC_UPDATER_DISABLED', true);

这种方法需要编辑 WordPress 的核心文件,在一些服务器——如虚拟主机上实现起来不是很简单,所以不是很推荐。

在主题的 functions.php 中添加钩子

编辑主题的 functions.php 文件,加入:

add_filter( 'automatic_updater_disabled', '__return_true' );

这条语句只是禁止自动安装更新,如果想更进一步,关闭自动检查更新和显示更新提示,还可以加入以下语句:

add_filter('pre_site_transient_update_core', create_function('$a', "return null;")); // 关闭核心提示
add_filter('pre_site_transient_update_plugins', create_function('$a', "return null;")); // 关闭插件提示
add_filter('pre_site_transient_update_themes', create_function('$a', "return null;")); // 关闭主题提示
remove_action('admin_init', '_maybe_update_core'); // 禁止 WordPress 检查更新
remove_action('admin_init', '_maybe_update_plugins'); // 禁止 WordPress 更新插件
remove_action('admin_init', '_maybe_update_themes'); // 禁止 WordPress 更新主题

或许有人担心更换或更新主题后,修改的代码会消失。为此我依旧建议使用 Snippets 插件来添加代码,无论主题如何变,自定义代码都不受影响。

使用插件

插件是懒人最好的工具,安装 – 设置 – 完事。管理更新的插件有挺多,不过我比较推荐 Easy Updates Manager,由著名的 UpdraftPlus 出品,因此可以对插件质量放心。

UpdraftPlus Easy Updates Manager
控制插件更新
UpdraftPlus Easy Updates Manager
控制主题更新

Easy Updates Manager 免费版可以控制单个主题或插件的更新行为,也可以全局启动、禁止,如果是小站点,这些功能已经完全能够满足需求。

如果是大型站点或者生产环境,建议 购买 Premium 服务,实用的功能包括:

  • 安全模式,确保要更新的内容与网站环境兼容,避免损坏网站;
  • 计划更新时间,决定何时安装更新,避免对业务产生大的影响;
  • 延迟更新,方便跳过某个版本,等待更适合的时机来更新;
  • 自动备份,更新前备份数据,以便快速恢复;
  • 导入导出,邮件通知,等等……

默认图片
耕读君
云时代的我们要学会“腾云驾雾”
文章: 108