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

WordPress自定义头部添加现有菜单项链接后部分页面报错如何解决

WordPress自定义头部链接报错解决方案

问题根因

你的报错属于硬编码静态链接与WordPress路由规则、主题加载逻辑不匹配导致:

  1. /blog/是物理存在的独立文件夹,服务器会优先匹配物理目录因此访问正常;而/about-us/这类属于WordPress生成的虚拟路由,没有对应物理文件夹,规则匹配异常就会触发报错
  2. 你仅修改了首页front-page.php引入自定义头脚,其他页面仍走原主题加载逻辑,路由匹配后出现规则冲突或模板找不到的问题
  3. 你贴出的博客链接代码存在笔误,锚文本写的是About Us而非Blog,也需要同步修正

解决方案

  • 替换所有硬编码链接为WordPress原生函数生成的动态链接
    不要写死href="/about-us/",改为调用官方函数生成链接:
    <li class="">
      <a class="nav-link" href="<?php echo esc_url( get_permalink( get_page_by_path( 'about-us' ) ) ); ?>">About Us</a>
    </li>
    
    不同类型页面对应调用不同函数:首页用home_url( '/' )、文章类型归档页用get_post_type_archive_link()、分类页用get_category_link(),避免域名、路径变动导致的链接失效。
  • 修正服务端重写规则
    Nginx站点配置需加入WordPress默认伪静态规则:
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    
    Apache环境需确认根目录下.htaccess为WordPress默认伪静态配置,没有被自定义规则覆盖。
  • 若需要全站生效自定义头脚,不要仅修改front-page.php,建议通过子主题替换原主题的header.php、footer.php文件,避免后续原主题更新覆盖你的修改。
  • 登录WordPress后台「页面」列表,确认关于我们、联系我们等页面的slug确实为about-us、contact-us,没有被修改为其他值。

内容的提问来源于stack exchange,提问作者Sujeevan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 13:39:01