WordPress首页设为最新文章模式时如何修改首页Permalink URL
需求可行性说明
该需求可以实现,你之前使用的代码失效是因为判断逻辑写反,且缺少/first/路径的内容映射配置,完整操作步骤如下:
具体操作步骤
步骤1:配置路径重写规则,让
/first/路径可正常显示最新文章列表
建议先创建Bimber Premium的子主题,所有代码添加到子主题的functions.php文件末尾,避免主题更新后自定义代码丢失。首先添加以下重写规则代码:function custom_home_rewrite_rule() { add_rewrite_rule('^first/?$', 'index.php?post_type=post', 'top'); } add_action('init', 'custom_home_rewrite_rule');添加完成后进入WordPress后台「设置-固定链接」,直接点击「保存更改」即可,不需要修改现有固定链接配置,操作目的是刷新WordPress的重写规则缓存。
步骤2:修正首页重定向逻辑
替换你之前添加的重定向代码为以下内容:function redirect_root_to_custom_home() { // 仅当访问根路径且是前台首页/文章列表首页时触发跳转,避免死循环 if( (is_home() || is_front_page()) && $_SERVER['REQUEST_URI'] == '/' ) { wp_redirect( home_url('/first/'), 301 ); exit; } } add_action('template_redirect', 'redirect_root_to_custom_home');测试阶段可以将代码中的
301改为302,避免浏览器缓存错误的重定向规则,确认所有功能生效后再改回301。步骤3:统一替换站内首页链接
为了避免站内的首页入口(如logo、导航首页按钮)仍跳转根路径再二次重定向,添加以下代码统一修改全站输出的首页链接:function custom_home_url($url, $path, $orig_scheme) { if ($path == '' || $path == '/') { return home_url('/first/'); } return $url; } add_filter('home_url', 'custom_home_url', 10, 3);步骤4:清理缓存验证效果
依次清理WordPress站点缓存、Bimber主题内置缓存、浏览器缓存后,访问根域名会自动跳转到/first/路径,且该路径正常显示你原本的最新文章列表内容。
内容的提问来源于stack exchange,提问作者tdomnet
相关产品推荐
相关产品推荐

