WordPress 文章链接地址 ID 不连续解决方法

WP教程评论864字数 1031阅读模式

WordPress 默认情况下发布的文章 ID 不是连续的,是因为 WordPress 自动草稿、文章修订版、页面、菜单、媒体等功能都要占用 ID,所以发布的文章 ID 一般是不连续的。今天为大家分享一下解决文章链接地址不连续的几种通用方法。

WordPress 文章链接地址 ID 不连续解决方法-图片1

实现方式

方法一、列别名法

1、固定链接设置

在后台固定链接设置中,将文章固定链接设置为/%postname%.html的形式,通常是 /%post_id%.html.

WordPress 文章链接地址 ID 不连续解决方法-图片2

2、修改文章别名

写文章时,将文章别名修改为数字,和上一篇文章保持连续。

WordPress 文章链接地址 ID 不连续解决方法-图片3

3、历史数据处理

对于历史数据(已经发布的文章),可以使用上一步的方法逐一修改文章别名。如果文章数量比较多的话,可以使用 SQL 语句批量修改。

# 批量将所有已经发布了的文章的列别名修改为 ID 值
update wp_posts set post_name = id where post_type = 'post' and post_status = 'publish';
优点:操作简单,容易理解,适合小白。
缺点:没有充分利用 ID 主键的特性(唯一性与持久性),更换主题后可能会反弹,故不推荐此方法

方法二、修改数据库法

通过 SQL 语句修改数据库中相关表中的数据。比如文章原 ID 为 21782,我们想修改为 201,执行下述 SQL 语句:

# 修改文章 ID
update wp_posts set id = 201 where id = 21782;
# 修改文章标签及类别
update wp_term_relationships set object_id = 201 where object_id = 21782;
# 修改文章关联属性,比如浏览量
update wp_postmeta set post_id = 201 where post_id = 21782;
# 修改文章关联评论
update wp_comments set comment_post_id = 201 where comment_post_id = 21782;
优点:使用 ID 作为文章标识,充分利用了 ID 的特有属性,即使更换主题也不会产生任何问题。
缺点:每次发布新文章时都需要手动操作数据库(可以通过插件解决),推荐使用插件(插件只需要实现上述四个 SQL 即可,有需要的朋友可以在下方留言)。

结束语

之前尝试过禁用文章修订的方式,但是经常会出现丢失内容的现象。本文介绍了两种方法,其中方法一使用的人数较多,但本文不推荐,可以使用插件来实现方法二的功能。如果有任何意见或建议,欢迎在下方评论处留言。

本文已通过「原本」原创作品认证,转载请注明文章出处及链接。

夏日阳光
  • 本文由 夏日阳光 发表于 2021年2月23日
  • 本文为夏日阳光原创文章,转载请务必保留本文链接:https://www.pieruo.com/168.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证