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

导航循环中:from=segment_1配置返回错误二级导航结果的问题

原提问

参照相关教程构建站点导航时出现异常:
站点树结构为根目录下包含musicians、projects等顶级页面,首页为默认根页面。
使用的二级导航实现代码:

{{ nav:collection:pages :from="segment_1" }}
    {{ if ! no_results}}
        <li><a href="{{ url }}">{{ title }}</a></li>
    {{ /if }}
{{ /nav:collection:pages }}

问题现象:访问首页时,二级导航仍展示musicians、projects两个条目。按逻辑首页无URL分段,segment_1为空,不应输出任何二级导航内容,需排查配置问题。


解答

问题根因

异常由Statamic导航标签对空from参数的默认处理逻辑导致:

  • 首页访问时URL无路径分段,segment_1变量值为空
  • 当给:from传入空值时,nav:collection标签会忽略该空参数,默认拉取站点根目录下的所有顶级子页面,恰好对应musicians、projects条目
  • 此时标签返回有效结果,no_results判断为false,条目被正常渲染

修复方案

在导航标签外层增加URL分段存在性判断,仅当segment_1有值时才渲染二级导航,避免空参数触发默认行为:

{{ if segment_1 }}
    {{ nav:collection:pages :from="segment_1" }}
        {{ if ! no_results }}
            <li><a href="{{ url }}">{{ title }}</a></li>
        {{ /if }}
    {{ /nav:collection:pages }}
{{ /if }}

如需更细粒度的控制,也可在segment_1为空时传入一个不存在的页面ID作为from参数,但外层判断的方案更符合站点导航的常规实现逻辑。


内容的提问来源于stack exchange,提问作者Mista K.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.25 19:24:03