解决卸载WP No Category Base插件后页面出现404的问题

其实这个插件已经卸载几天了,用了歌神分享的代码版。今天改代码时候,刷新主题的几个文件,包括 functions.php,结果悲剧的事情发生了:

解决卸载WP No Category Base插件后页面出现404的问题

 

所有文章页面全部 404,即%post_id%.html 的伪静态失效了!用 ?p=id 的动态形式倒是可以访问!

仔细的回顾了下这些天到底改了哪些内容,并分析了下哪些操作会造成这个原因:

①、停用了 WP No Category Base - WPML compatible 插件,换成了代码版;

②、修改测试了下手机主题的 CSS,期间由于改错了,还导致 header 内容丢失,最后恢复了近期 header 的备份;

③、对手机版的一个页面添加了 301 跳转的 php 代码。

从经验上来说,第②、③点均不应该会影响到所有文章页面才对!于是定位到了第①点。

由于问题关于伪静态,所以第一时间查看了下.htaccess 内容,发现里面的内容被重置成 WordPress 设置伪静态之后默认的了!真是诡异,怎么会自己重置呢?怀疑是哪个插件搞的鬼。。。于是赶紧恢复了下,但是文章页还是 404。

于是,目标继续转移到了 WP No Category Base - WPML compatible 插件上,把之前加入的代码移走,重新装回这个插件发现好了!看来就是这个插件的问题。

纳闷的是,我用代码版用了好几天了都没出问题了,为啥今天突然出问题呢?只好求助度娘了,终于让我发现了一个同类:

因为需要去除 wordpress 的 Category,所以安装了一个 WP No Category Base 插件。

但因为使用 WP No Category Base 插件后与的博客自身的问题起冲突,所以卸载了。

卸载后 wordpress 博客所有页面出现了 404 错误,无法找到页面。

于是谷歌百度都未找到解决办法,下载了 WP No Category Base 插件的代码看了下,并没有更改数据库。

简单的推测并证实,解决办法非常简单:

1、记住或保存 wordpress 现有的固定链接方案。

2、更改 wordpress 固定链接为系统默认的任何一个。

3、改回 wordpress 固定链接为自己原设置的方案。

ok,一切正常了。

摘自赵健博客

按照他的方法,停用插件,继续换上代码版,在后台设置中,随便挑选了一个固定链接保存后,再换回 post_id 的模式,发现还真可以了!看来这个插件卸载后会存在某种缓存!导致文章页面 404!!

弄好后,仔细检查了下各种链接,结果几乎都好了,就特么 http://zhangge.net/website 这个分类很顽固,依然 404....真是诡异啊!

于是,进入死循环:重装回插件发现可以访问→换回代码→website 依然 404,其他 OK→去掉代码,启用插件→website 依然 404....

最后,灵光一闪,想到 360 网站卫士对这些分类做了强制缓存。。。

进入 360 网站卫士,把所有缓存清除后,世界清净了,404 终于沙扬娜拉了!

评论已关闭!