WordPress更改固定链接诸项事宜

本文目录

前言

记一次站点更改WordPress固定链接并提交百度站长平台链接改版。近日,由于看着 朴素 的链接不顺眼,本着生命在于折腾的心态,准备着手将WordPress固定链接由原本的朴素改为自定义。

即 https://www.qcgzxw.cn/?p=6666 -> https://www.qcgzxw.cn/6666.html

具体思路

由于前几次更换完固定链接后出现新链接访问404的症状,以及担心百度掉收录等等问题,这次大改之前可以说是做足了准备。

固定链接更改后访问文章404

原因分析:未添加nginx或者apache的重写规则(rewriter)

解决办法:添加或将旧规则更新为以下代码

location / { index index.html index.php; 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; } } rewrite /wp-admin$ $scheme://$host$uri/ permanent;

1234567891011121314

location / { index index.html index.php; 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; } }  rewrite /wp-admin$ $scheme://$host$uri/ permanent;

更改后记得重启Nginx应用配置。

其实WordPress早就给出了文档:https://codex.wordpress.org/Nginx

  1. 配置好重写规则,更新固定链接
  2. 去各大站长平台添加网站改版规则(目前就百度和360有这个功能,其他的搜索引擎不管)

更改固定链接

这没啥好讲的,按你个人喜好以及搜索引擎喜好来确定具体的链接形势。

我选择/%post_id%.html的链接形势是为了微信小程序以及伪静态和站点收录

配置好nginx 的rewriter规则之后即可直接应用

添加网站改版规则

百度站长平台添加规则地址:https://ziyuan.baidu.com/rewrite

360站长平台添加规则地址:http://zhanzhang.so.com/?m=SiteUpgrade

  • 1. 当一个站点的域名或者目录发生变化时,如果想让百度快速收录变化之后的新链接、用以替换之前的旧链接,那么您就需要使用百度搜索资源平台的网站改版工具来提交您的改版关系,加速百度对已收录链接的新旧替换
  • 2. 改版规则中的新旧链接一定要使用301的方式进行跳转
  • 3. 建议您尽量使用站点改版和规则改版,会有比较短的处理周期,也缩短后续您反馈问题的追查用时间
  • 4. 百度搜索资源平台对改版规则的校验时间范围为0.5——2小时,改版生效时间范围为12——48小时,整体来看,您从提交改版规则到线上生效,最短12.5小时,最长50小时
  • 5. 该工具针对的是网站链接的改变,网站内容改版不适用于该工具
  • 6. 您提交的三类改版形式,不能有交叉或者包含关系,即不能有一条链接同时属于多个改版形式
  • 7. 改版跳转关系请长期保持,直到新站流量完全稳定

以上是百度改版说明。

规则选择说明

由于WordPress PostID不连续,若使用 规则改版 会提示原链接访问错误。(原因可能是不连续ID或者重写规则的问题)

所以我们只能选择 新旧URL对的方式。

规则编写

获取全站文章链接,并将其编辑为旧链接 新链接的形式

在WordPress的根目录添加一个GetId.php文件,具体代码如下

<?php include ( "wp-config.php" ) ; require_once (ABSPATH.'wp-blog-header.php'); global $wpdb; $CID = 1;//分类id,只支持一个分类 $sql="SELECT ID,post_title,post_content FROM wp_posts,wp_term_relationships,wp_term_taxonomy WHERE ID=object_id and wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id and post_type='post' and post_status = 'publish' and wp_term_relationships.term_taxonomy_id = $CID and taxonomy = 'category' order by ID desc"; $myrows = $wpdb->get_results($sql); foreach ($myrows as $b) { echo $b->ID."<br />"; } ?>

1234567891011

<?php         include ( "wp-config.php" ) ;       require_once (ABSPATH.'wp-blog-header.php');       global $wpdb;        $CID = 1;//分类id,只支持一个分类      $sql="SELECT ID,post_title,post_content FROM wp_posts,wp_term_relationships,wp_term_taxonomy WHERE ID=object_id and wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id and post_type='post' and post_status = 'publish' and wp_term_relationships.term_taxonomy_id = $CID and taxonomy = 'category' order by ID desc";       $myrows = $wpdb->get_results($sql);      foreach ($myrows as $b) {      echo $b->ID."<br />";      }?>

然后访问你的域名+GetId.php(www.qcgzxw.cn/GetId.php)即可获取该目录ID下的所有文章,如有多个分类目录,将php文件里面的$CID改成另一个目录ID重新访问。

目录页面地址你的域名+/wp-admin/edit-tags.php?taxonomy=category


访问php文件后,会得到当前目录的所有文章ID

将ID保存到NotePad++

然后按Ctrl+F唤出小窗口,点击替换,找对正则表达式,然后全部替换

我的正则如下

查找目标:(-?[1-9]\d*) 替换目标:www.qcgzxw.cn/?p=$1 www.qcgzxw.cn/$1.html

12

查找目标:(-?[1-9]\d*)替换目标:www.qcgzxw.cn/?p=$1 www.qcgzxw.cn/$1.html

然后全选复制规则,粘贴到百度站长平台和360站长平台等待审核即可。

PS:360站长平台提交url对时不需带http(www.qcgzxw.cn/?p=123 www.qcgzxw.cn/123.html),百度站长平台需要带http(https://www.qcgzxw.cn?p=123 https://www.qcgzxw.cn/123.html)

后言

应用rewriter之后,旧链接会自动301重定向到新链接。

网站改版对收录还是有一定影响,希望做好心理准备!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏木子昭的博客

快速打开"一组"网站

插件下载地址: https://chrome.google.com/webstore/detail/session-buddy/edacco...

695
来自专栏信安之路

论二级域名收集的各种姿势

1 查询whois http://whois.chinaz.com/baidu.com

810
来自专栏知晓程序

微信里的这 4 款「秘密武器」,全方位保护你的隐私

今天,知晓程序(微信号 zxcx0101)要推荐 4 款「秘密」小程序,给你的微信加把锁。

671
来自专栏知晓程序

我,一个自诩牛逼上天的 Node.js 和小程序开发者,今天就教「快应用」好好做人

1122
来自专栏FreeBuf

利用Wireshark任意获取QQ好友IP实施精准定位

虽然网上已经有了很多获取IP的qq插件,但是其原理大致都是相同的,但是插件的安全性而言就不敢恭维了,下面介绍如何利用wireshark获取好友ip。 一、打开w...

5623
来自专栏Linyb极客之路

详解PV、UV、VV、IP及其关系与计算

PV即Page View,网站浏览量,指页面浏览的次数,用以衡量网站用户访问的网页数量。用户每次打开一个页面便记录1次PV,多次打开同一页面则浏览量累计。一...

1322
来自专栏有趣的Python

22- vue django restful framework 打造生鲜超市 -第三方登录集成

Django2.0.2(Django-rest-framework)以及前端vue开发的前后端分离的商城网站 线上演示地址: http://vueshop.mt...

5129
来自专栏Java后端生活

购物APP项目开发(3)——广告轮播

1606
来自专栏开源项目

码云推荐 | 基于EasyUI 1.5.x 的免费美化主题包

作者语 Insdep theme是基于EasyUI 1.5.x 的一款免费的美化主题包,拥有百度编辑器、cropper、Highcharts、justgage、...

35916
来自专栏架构师之路

Google-优秀移动站点设计10招

Google-优秀移动网站设计10招 1)添加一个醒目的搜索条:在移动终端上,人们希望能够快速找到自己需要的东西 2)把大表格拆分成小块:别搞一个长长的表格页面...

2683

扫码关注云+社区