搜索
Hi~登录注册
查看: 1586|回复: 0

WordPress自动更新无法进入后台解决办法

[复制链接]

1892

主题

1899

帖子

6406

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
6406
发表于 2015-5-14 13:48:53 | 显示全部楼层 |阅读模式
我的wordpress自动更新到3.8.3了,于是想去后台看看更新得怎么样了,发现确无法进入后台,后来找出是缓存插件造成,绝得这样自动更新不太好,以后还是手动更新,就在后台把自动更新的功能关了。
</div><p>今早我收到 3.8.3 的通知后,顺便去后台看看评论,没想到登录时老是提示&ldquo;您的WordPress<a href="/database/database.html" target="_blank">数据库</a>已经是最新的了!&rdquo;,如下图</p>
<p><img  width="480" height="280" src="/get_pic/2015/02/04/20150204233831838.png" alt="140415-wordpress-auto-update-error" /></p>
<p>点&ldquo;继续&rdquo;按钮直接跳回首页,不管我怎么刷新也没用。</p>
<p>想了下,以前手动也遇到过,一般都是缓存插件造成的,我的博客有安装 db-cache-reloaded-fix 这个数据库缓存插件,于是连上ftp:</p>
<p>1. 把此插件文件夹改名</p>
<p>2. 此插件在 wp-content 目录下生成的 db.php 和 db-config.ini 改名</p>
<p>解决!</p>
<p><strong>恢复 db-cache-reloaded-fix 插件方法:</strong></p>
<p>1. 访问一下 wp 后台的插件列表(会提示 db-cache-reloaded-fix 被更改之类的错误提示)</p>
<p>2. 把刚才改名的文件/文件夹改回来</p>
<p>3. 删除 db-cache-reloaded-fix 目录下的 cache 文件夹所有缓存文件(wp-content/plugins/db-cache-reloaded-fix/cache)</p>
<p>4. 刷新下 wp 后台的插件列表,重新激活 db-cache-reloaded-fix</p>
<p>未尝试的简单解决方法:不用改名什么的,直接删除 db-cache-reloaded-fix 目录下的 cache 文件夹所有缓存文件(同样遇到此情况的朋友可以先试试此方法)。</p>
<p>如果安装的是其他缓存插件(如 widget-cache,object-cache,wp-super-cache,wp-widget-cache等),以此类推解决。</p>
<p>----</p>
<p>我以前就说过&ldquo;如果用了缓存插件,最好清空缓存并停止缓存插件再升级&rdquo;,这次 WordPress 自动更新没考虑到用缓存的后果,虽然每次小更新缓存插件不一定就会&ldquo;捣乱&rdquo;。</p>
<p>既然跟缓存插件有兼容性问题,那么就要禁用&ldquo;后台自动更新&rdquo;,去 WordPress 官方扫了下,大方法有2种:</p>
<p>1. wp-config.php 文件中定义常量</p>
<p>2. 过滤器(filters)来处理。(我个人比较喜欢这个方式)</p>
<p><strong>关闭所有自动更新</strong></p>
<p>方法1. 在 wp-config.php 添加如下常量:</p>
<p>define( 'AUTOMATIC_UPDATER_DISABLED', true );</p>
<p>方法2. 使用下面的 filter:(放到主题的 functions.php 里面,下同)</p>
<p>add_filter( 'automatic_updater_disabled', '__return_true' );</p>
<p>顺便说下具体的吧,WordPress 后台自动更新功能有以下四种类型的更新:</p>
<p>核心文件更新(分3个模式)</p>
<p>核心开发更新模式:就是所说的&ldquo;bleeding edge&rdquo;,这个模式下是和开发版本同步的。如果你是 WordPress 极度爱好和尝鲜者可以尝试。</p>
<p>小版本核心更新模式:一般是安全和维护版本发布,比如 3.8 更新到 3.8.1。</p>
<p>大版本核心更新模式:比如,3.8 更新 3.9。</p>
<p>插件更新</p>
<p>主题更新</p>
<p>翻译文件更新</p>
<p><strong>核心更新</strong></p>
<p>方法1. wp-config.php 文件中定义常量 WP_AUTO_UPDATE_CORE 下面三种值来设置不同更新模式:</p>
<p>true &ndash; 开发版、小更新、大更新都会自动更新。</p>
<p>false &ndash; 开发版、小更新、大更新都不会自动更新。</p>
<p>minor &ndash; 只有小版本更新才会自动更新。</p>
<p>方法2. 过滤器(Filters):allow_dev_auto_core_updates, allow_minor_auto_core_updates, 以及 allow_major_auto_core_updates</p>
<p>这里有两个 WordPress 内置的函数用来设置开启和关闭:__return_true 和 __return_false,例如:</p>
<p>开启开发更新模式与开发版本同步:</p>
<p>add_filter( 'allow_dev_auto_core_updates', '__return_true' );</p>
<p>关闭小版本更新:</p>
<p>add_filter( 'allow_minor_auto_core_updates', '__return_false' );</p>
<p>开启大版本更新:</p>
<p>add_filter( 'allow_major_auto_core_updates', '__return_true' );</p>
<p>插件和主题更新</p>
<p>插件和主题自动更新默认是关闭的,可以通过 auto_update_$type 这个 filter 来开启它们,其中 $type 是 &ldquo;plugin&rdquo; 或者 &ldquo;theme&rdquo;。</p>
<p>开启插件自动更新:</p>
<p>add_filter( 'auto_update_plugin', '__return_true' );</p>
<p>开启主题自动更新:</p>
<p>add_filter( 'auto_update_theme', '__return_true' );</p>
<p><strong>翻译更新</strong></p>
<p>翻译更新默认是开启的,如要关闭,这样:</p>
<p>add_filter( 'auto_update_translation', '__return_false' );</p>
<p>通常太自动的东西还是比较容易遇到问题,Orz
公众微信:idc5ahl
公众QQ:吾爱互联
关注公众微信,公众QQ每天领现金卡密
卡密介绍(http://www.5ahl.com/thread-2182-1-1.html
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 点我注册

快速回复 返回顶部 返回列表