WordPress固定链接配置:如何为特定页面添加/try/子目录前缀
给WordPress特定页面添加/try/子目录前缀的可行方案
以下提供两种可落地的实现方案,均不会和现有/blog/%postname%的文章固定链接结构冲突:
方式一:纯代码实现(推荐,无冗余功能,不影响站点性能)
- 操作步骤:
- 给需要添加/try/前缀的页面新增自定义字段
add_try_prefix,值填写1,作为规则识别标记 - 编辑当前使用主题的
functions.php文件,追加如下代码:
// 注册/try/前缀的URL重写规则 function custom_try_rewrite_rule() { add_rewrite_rule( '^try/([^/]+)/?$', 'index.php?pagename=$matches[1]', 'top' ); } add_action('init', 'custom_try_rewrite_rule'); // 自动替换标记页面的输出链接为带/try/前缀格式 function custom_try_permalink($url, $post) { if ($post->post_type === 'page' && get_post_meta($post->ID, 'add_try_prefix', true) == 1) { return home_url('/try/' . $post->post_name . '/'); } return $url; } add_filter('page_link', 'custom_try_permalink', 10, 2);- 进入WordPress后台「设置」-「固定链接」,无需修改任何配置,直接点击「保存更改」刷新站点重写规则即可生效。
- 给需要添加/try/前缀的页面新增自定义字段
- 后续调整:需要取消某个页面的/try/前缀时,只要删除对应页面的
add_try_prefix自定义字段,或将字段值改为0即可。
方式二:父页面嵌套实现(无需写代码,适合新手)
- 操作步骤:
- 进入后台「页面」-「新建页面」,设置页面标题为
try,页面别名为try,页面状态可设为草稿,或发布后设置为空内容模板。 - 打开所有需要添加/try/前缀的页面编辑页,在「页面属性」-「父页面」下拉选项中选择刚才创建的
try页面,保存后对应页面的URL会自动生成/try/前缀。
- 进入后台「页面」-「新建页面」,设置页面标题为
- 注意事项:如果主题自带面包屑导航,可对应调整面包屑规则,隐藏多余的
try层级即可。
如果配置后访问带/try/前缀的页面出现404,优先进入固定链接设置页点击保存刷新重写规则即可解决。
内容的提问来源于stack exchange,提问作者Jared Reed
相关产品推荐
相关产品推荐

