如何在WordPress中全局修改自定义文章类型的父级slug
移除WordPress自定义文章类型URL中的/blog/前缀
要解决这个问题,核心是调整自定义文章类型的重写规则参数,同时刷新WordPress的固定链接规则,具体步骤如下:
修正自定义文章类型注册参数
你之前的代码缺少了'with_front' => false这个关键配置——它的作用是忽略固定链接设置中添加的前缀(比如你的/blog/)。修改后的注册代码示例:register_post_type( 'your_post_type', array( 'labels' => array( 'name' => '自定义内容', 'singular_name' => '自定义条目' ), 'public' => true, 'hierarchical' => true, 'rewrite' => array( 'slug' => 'new-slug', 'with_front' => false, // 移除固定链接前缀 'pages' => true // 支持分页(按需添加) ), // 其他必要参数... ) );刷新固定链接规则
修改代码后,必须登录WordPress后台,进入「设置」→「固定链接」页面,直接点击「保存更改」(无需修改任何选项)。这一步会强制WordPress更新重写规则,让新的URL结构生效。排查潜在冲突
如果操作后仍未解决,检查以下几点:- 是否有SEO类插件或自定义重写规则的插件干扰,可暂时禁用插件测试
- 确认自定义文章类型的
new-slug没有和现有页面、分类的slug重复,避免URL冲突 - 检查固定链接设置中是否将默认文章的前缀设为/blog/,
with_front => false会强制忽略这个前缀
内容的提问来源于stack exchange,提问作者Justin
相关产品推荐
相关产品推荐

