WordPress永久链接格式设为postname时导致页面显示错误的解决办法

Bruce老师的细心指导下,修改了 Reeoo.com 的永久链接格式,从原来的 /%category%/%post_id% 的格式修改为 %postname% ,以便于url变得更有意义一些,当然这个前提是 Reeoo.com 所有的文章标题都是被收录的网站的名称,不需要另外再去重新编辑slug之类的。

以上两个不同的URL格式的差别,只有在文章页(single)才显示,分类页及其它页面基本都是一样的,所以无需做过多的修改,另外再安装 Dean’s Permalinks Migration 插件更是连301都不需要做。

安装这个插件后,会自动读取当前的URL格式,保存一下然后去修改永久链接格式,当访问旧地址时会自动301跳转到新地址。

本以为一切都顺风顺水的,但当检查地址是否全部正确的时候,发现很多以前的老文章访问时,页面的内容结构会由读取 single.php 文件变成读取 page.php 文件,而访问附件的地址时则是正常的,但url不会跳转,注意看以下两个截图的地址栏:

进一步检查这些显示有错误的文章内容时,发现这些文章内容是完全正常的,随意添加一点内容再更新文章时,页面依然显示错误的。

于是又将文章内容里的图片删掉,重新添加一下图片,再保存时显示就正常了,基本上判定为图片上传的时候有问题。而出现错误的文章发布时间集中在2010年1月份之前,回想在最早开始给Reeoo添加内容时,因为嫌每个文章上传一次图片麻烦,所以有时会一下子上传一堆图片,然后写每个文章时直接复制HTML代码过去修改,以达到更快速简便的效果。

再加上最早的时候使用的是WordPress2.8的版本,之后经历过几次大版本升级,数据的升级可能不完善,于是就导致了这个问题的出现。

确定为图片上传的问题后,改为去检查媒体库,发现里面有接近200来张的图片是没有附属的,也即是在数据库里这些图片没有被指定附加在哪个文章里,于是只需要重新为这些图片指定附属的文章,问题完美解决。

reeoo.com - web design inspiration

6条评论

  1. Randy说道:

    摄神可以介绍下怎么更改和设置301重定向的么?我现在的网址格式就是/%category%/%post_id%,但是一调整分类就麻烦了,我现在想把格式改为 /story/id.html,并且改后不影响搜索收录,以及点击旧网址可以自动跳到新网址页面,在WOPUS问答里看了些看的模模糊糊,不知摄神能否在这里介绍一下,谢谢。

    • 摄氏度说道:

      文章中里提供了301跳转的插件,安装这个插件就可以了,不用另外手动做301规则。

  2. Dabo说道:

    另外一个网站准备改了

  3. 董小富说道:

    我下载了本主题,询问下老大,在哪里设置文章可以被评论功能,烦请大哥加下QQ:157884136指导我下

  4. 深度淘宝说道:

    摄神啊,你这个主题用的html5啊,好多代码看不懂。我想把它改成http://foodgawker.com的样子,可是基础太差了,没法改。能不能帮忙仿一下啊?可以付费的。

  5. 三优生活说道:

    哈哈 千万别老动 一动动全身哈哈 我的动了 IP少了很多

评论已关闭。