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

发布于 2020-01-23

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

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

实现方式

方法一、列别名法

1、固定链接设置

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

2、修改文章别名

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

3、历史数据处理

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

# 批量将所有已经发布了的文章的列别名修改为 ID 值
update wp_posts set post_name = id where post_type = 'post' and post_status = 'publish';

[mark_a]优点:操作简单,容易理解,适合小白。
缺点:没有充分利用 ID 主键的特性(唯一性与持久性),更换主题后可能会反弹,故不推荐此方法。[/mark_a]

方法二、修改数据库法

通过 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;

[mark_a]优点:使用 ID 作为文章标识,充分利用了 ID 的特有属性,即使更换主题也不会产生任何问题。
缺点:每次发布新文章时都需要手动操作数据库(可以通过插件解决),推荐使用插件(插件只需要实现上述四个 SQL 即可,有需要的朋友可以在下方留言)。[/mark_a]

结束语

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

喜欢 0
奋楫笃行,臻于至善!

相关文章

BEGIN 主题搜索结果页面添加标题图片

BEGIN 主题可以给文章分类页面、独立页面以及文章详情页面添加标题图片,但是在搜索结果页面及 404 页面却无法通过配置添加标题图片,本文简单分享一下给搜索结果页面和 404 页面添加标题图片,以及...
阅读全文

WordPress 文章评论设置分页按时间倒序排序

WordPress 评论默认是按发布的时间顺序排列的,如果我们想按照时间倒序排列,可以根据本文的方法修改。 1、修改comment-template.php 编辑文件 wp-includes/comm...
阅读全文

BEGIN 主题最新文章页面添加加载更多按钮

使用 Begin 主题的博主可能都发现过这样一个问题:如果设置杂志布局,博客页面(本站叫最新文章)是不显示加载更多按钮图标的,而其他所有带分页的页面都显示。如果不显示加载更多按钮图标的话,我们就只能通...
阅读全文

使用 LetterAvatar 脚本生成首字图片替代默认评论头像

Gravatar 是全球通用头像,如果我们没有设置 Gravatar 头像,那么在网站上留言或评论就会显示默认的头像或者随机头像,这样的话用户体验不是很好。今天为大家分享一下使用 LetterAvat...
阅读全文

使用 iconfont 阿里矢量图标为网站添加图标的方法

Iconfont 是一个开源的矢量图标管理平台,它的图标库非常丰富,大概有一百三十多万个。Iconfont 可以按照需求定制图标字体库,还能随时修改,最重要的字体图标库只有 100 多 K。今天就来为...
阅读全文

外链图片缩略图不显示解决方法 A TimThumb error has occured

使用 timthumb 可以轻松实现缩略图自动裁剪的功能,但是由于某些原因,使用 timthumb 裁剪图片经常会出现缩略图无法正常显示的现象,错误提示为“A TimThumb error has o...
阅读全文

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注