You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让WordPress固定链接仅显示主分类,移除父分类路径

解决方案:移除WordPress固定链接中的父分类

方法1:利用RankMath SEO插件设置

既然你已经在用RankMath,直接用它的内置功能就能解决:

  • 进入后台「RankMath > SEO > 链接」页面
  • 找到「分类链接」区域,将「分类基础」设置为空(不要留任何字符)
  • 往下找到「主分类优先」选项,勾选「使用主分类来生成文章链接」
  • 保存设置后,进入「设置 > 固定链接」页面,点击「保存更改」刷新WordPress重写规则

方法2:添加自定义代码

如果RankMath的设置未生效,可以通过代码强制只保留主分类的slug:

  • 安装并激活「Code Snippets」插件(或备份主题后直接编辑functions.php文件)
  • 添加以下代码片段并激活:
function keep_only_primary_child_category_in_permalink( $permalink, $post ) {
    if ( $post->post_type !== 'post' ) return $permalink;
    
    // 获取RankMath标记的主分类ID
    $primary_cat_id = get_post_meta( $post->ID, 'rank_math_primary_category', true );
    if ( empty( $primary_cat_id ) ) return $permalink;
    
    $primary_cat = get_category( $primary_cat_id );
    if ( ! $primary_cat ) return $permalink;
    
    // 替换原链接中的父分类部分
    $permalink = str_replace( get_category_parents( $primary_cat->parent, false, '/', true ), '', $permalink );
    return $permalink;
}
add_filter( 'post_link', 'keep_only_primary_child_category_in_permalink', 20, 2 );
  • 完成后进入「设置 > 固定链接」页面,点击「保存更改」刷新规则

这个插件能更灵活地控制固定链接结构:

  • 安装并激活「Permalink Manager Lite」插件
  • 进入插件设置页,找到「Permalink Structure」,将文章的结构设置为/%category%/%postname%/
  • 切换到「Advanced Options」标签,勾选「Use only the primary category in permalinks」和「Exclude parent categories from permalinks」
  • 保存设置后刷新固定链接规则

注意:修改链接结构后,建议设置301重定向避免旧链接失效影响SEO,可通过RankMath的重定向功能或专门的重定向插件实现。

内容的提问来源于stack exchange,提问作者Shahzad S.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 05:10:59