研究wordpress固定链接

没事折腾wordpress,改了固定链接,发现全成了404,网上百度一番,基本搞定,现记录下来,方便以后使用。

wordpress固定链接的基本形式有以下几种:

1、 /%year%/%monthnum%/%day%/%postname%/

2、 /%year%/%monthnum%/%postname%/

3、 /%year%/%monthnum%/%day%/%postname%.html

4、 /%year%/%monthnum%/%postname%.html

5、 /%category%/%postname%.html

6、 /%post_id%.html

7、 /%postname%/

我改成这种形式:

/%category%/%post_id%.html

改了固定链接,直接访问肯定会出现404。由于我用的nginx,所以也要改rewrite规则,规则如下:

if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}

加载了上述规则后,页面就可以正常访问,但是登录后台却不行了,成了404,吓我一跳。又百度一番,发现改了固定链接会影响到后台页面,所以还需要加一段规则:

rewrite /wp-admin$ $scheme://$host$uri/ permanent;

再次重新加载Rewrite规则,前台和后台访问已经全部正常了。

后续又查了下,貌似这个规则官方有更新了,两行就可解决,换成这个试了试,也确实是正常的。

location / {
try_files $uri $uri/ /index.php?$args;
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
}

在使用中发现,栏目页面的链接是:URL/category/栏目名。我想去掉其中的“category”,变成“URL/栏目名”的形式,发现只需要在后台做一个小小的改动就行了。在后台的“固定链接”页面,将“分类目录前缀”中填上“.”,也就是英文中的句号,保存即可。

  • 用支付宝打我
  • 用微信打我

生活是一种记录:记录所见、所闻、所想、所感……

《研究wordpress固定链接》25条评论

  1. 唯历史 说道:

    我好想用得着,收藏先

  2. 黑暗游侠 说道:

    我直接用的/year/post_id.html

  3. 姜辰 说道:

    楼下说404设计的好可以留住用户,然而我的404····不过博主这样折腾,还是建议首选apache吧,毕竟.htaccess文件修改比re好多了

  4. 企业培训 说道:

    404页面设计的好,也可以留住用户。

  5. 咸菜一点米 说道:

    话说博主玩的这么转怎么用这丑的主题,还有那个反人类的验证码。。。感觉体验好差。。

  6. 郑永 说道:

    研究的好。

  7. 公子 说道:

    这几年一直用的/%postname%.html这种。。。

  8. xy 说道:

    我的好像是弄数字的。

  9. 文栋说自媒体 说道:

    良心分享,这个不错,哈哈!

  10. 摩天之星 说道:

    留个痕迹!

发表评论