WordPress自动使用文章ID作为别名(slug)

黄勇GEO如何找客户26-07-07 17:23:13

WordPress自动使用文章ID作为别名(slug)

使用固定链接结构是 %post_id% (ID),但是 WP User Frontend 这个前端用户中心插件要求必须设置为 %postname% (slug)才能使用,我不想改变以前的文章链接地址,该怎么办?

解决这个问题的,让 WordPress 自动使用文章ID作为别名(slug),也就是说,即使你设置为 %postname% 结构,仍旧可以自动生成 ID 结构的链接。或许你会说,修改固定链接结构后,原来的那些文章的链接变化了,怎么办?不用担心,照样可以解决!进入正题!

为了安全起见,请先备份网站的数据库,然后再按照下文操作!

更改固定链接结构

假设你原来的固定链接结构设置为 /%post_id%,现在你可以将它改为 /%postname% ,这时候你会发现,新建文章和老文章都使用文章标题作为别名

批量修改老文章的别名为ID

将下面的代码添加到网站根目录的 wp-config.php 的最底部,保存后访问一次网站首页(你将看到浏览器一直都在努力打开网页,不要急,耐心等待,直到网页真正打开,所需时间看文章数和网络情况而定)。网页打开后,删除刚刚添加到 wp-config.php 的代码!

/**

* 批量更改旧文章的别名为ID

* 使用方法:将代码添加到网站根目录的 wp-config.php 的最底部,访问一次网站首页,等页面打开后,再删除这些代码

*/

// 添加一个变量来包容文章标题数组,防止重复操作

$slug_done = array();

// 查询所有文章

$posts = $wpdb->get_results(

SELECT

`ID`,

`post_title`

FROM

`”. $wpdb->posts .“`

WHERE

`post_type` = ‘post’

);

// 输出文章

foreach( $posts AS $single ){

$this_slug = $single->ID;

$slug_done[]= $this_slug;

// 使用文章ID替换文章原来的别名

$wpdb->query(

UPDATE

`”. $wpdb->posts .“`

SET

`post_name` = ‘”. $this_slug .“‘

WHERE

`ID` = ‘”. $single->ID .“‘

LIMIT 1

);

}

新文章自动使用ID作为别名

将下面的代码添加到主题的 functions.php ,新建的文章都会自动使用ID作为别名

/**

* 新文章自动使用ID作为别名

* 作用:即使你设置固定连接结构为 %postname% ,仍旧自动生成 ID 结构的链接

*/

add_action(‘save_post’,‘using_id_as_slug’,10,2);

function using_id_as_slug($post_id, $post){

global $post_type;

if($post_type==‘post’){//只对文章生效

// 如果是文章的版本,不生效

if(wp_is_post_revision($post_id))

returnfalse;

// 取消挂载该函数,防止无限循环

remove_action(‘save_post’,‘using_id_as_slug’);

// 使用文章ID作为文章的别名

wp_update_post(array(‘ID’=> $post_id,‘post_name’=> $post_id ));

// 重新挂载该函数

add_action(‘save_post’,‘using_id_as_slug’);

}

}

更新:添加文章类型判断,只对文章(post)生效,不会影响页面等其他类型

在线留言/我们会尽快与您联系

[WordPress自动使用文章ID作为别名(slug)]相关推荐
今日文章
  1. 公司与行业研究报告与数据收集网站

    公司与行业研究报告与数据收集网站

    关注一个新领域的时候,都需要收集相关的行业报告和基础性数据做基本分析,形成自己的报告。 那现在就推荐各位我通常使用的数据收集,行业研究,公司研究报告的来源,希望对你找工作,或者了解新的行业有帮助。 1……

    被动营销2026-07-24

  2. Sketch矢量设计工具:高效率的24个快捷键

    Sketch矢量设计工具:高效率的24个快捷键

    Sketch是一款轻量、易用的矢量设计工具,它为数字设计而生小巧但功能强大,并拥有优雅的界面。 Sketch也是为图标设计和界面设计而生的,它轻量化简单易学,有经验的设计师花上几个小时便能将自己的设计技巧在Sketc……

    建站软件2026-07-24

  3. AI生成内容如何去除文章的AI味道

    AI生成内容如何去除文章的AI味道

    最近这两年,AI写作成为很多人都尝试过的一项功能,不光是写博客、写论文、写运营文案,连情书、检讨书都能用AI代写。然而,大多数人可能都有一个共同的感觉:用AI写出来的文章”味道”太重,一眼就能……

    新媒体2026-07-24

返回顶部小火箭