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

设置父页面slug为前缀的新子页面仅显示404错误

解决WordPress子页面设置父页面后404的问题

以下是针对你遇到的「设置父页面后子页面URL正确但跳404」问题的排查和解决步骤:

1. 确认父页面的基础状态

  • 确保Services页面处于发布状态(不是草稿、私密或待审核),只有发布状态的页面才能作为父页面生成有效URL
  • 检查Services页面的slug是否为services,避免和其他内容(如自定义帖子类型、分类、标签)的slug重复

2. 强制刷新重写规则

WordPress的重写规则缓存可能未更新,即使手动保存固定链接也可能失效:

  • 后台进入「设置」→「固定链接」,无需修改任何设置,直接点击「保存更改」,这会强制WordPress重新生成重写规则
  • 如果上述操作无效,可临时在主题的functions.php文件中添加以下代码,访问一次网站后删除(避免重复执行影响性能):
    flush_rewrite_rules();
    

3. 验证.htaccess文件(Apache服务器)

  • 确保.htaccess文件权限为644,让WordPress具备写入权限
  • 检查文件内的WordPress规则是否完整,正确内容如下:
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    

4. Nginx服务器配置检查

如果使用Nginx,需确保站点配置中包含正确的重写规则,示例如下:

location / {
    try_files $uri $uri/ /index.php?$args;
}

添加或修改后重启Nginx服务。

5. 排查插件冲突

  • 临时禁用所有插件,测试子页面是否能正常访问。若恢复正常,逐个启用插件,定位导致冲突的插件(SEO插件、缓存插件、自定义 permalink 插件是高发对象)
  • 禁用插件后记得再次刷新固定链接规则

6. 检查主题自定义规则

  • 临时切换到WordPress默认主题(如Twenty Twenty-Four),测试子页面访问情况。若正常,说明当前主题的自定义重写规则存在冲突,需检查主题functions.php中的add_rewrite_rule等相关代码

7. 避免slug重复冲突

确保没有其他页面、帖子、分类、自定义帖子类型的slug与services或子页面slug(如web-design)重复,重复的slug会导致URL路由混乱

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 12:30:48