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

如何在侧边栏导航中引入服务菜单?

问题排查与解决方案

1. 检查模板上下文数据

侧边栏和页脚的模板上下文存在差异,页脚能获取的页面数据,侧边栏可能未被传递:

  • 打开分类页面控制器(如CategoryController),确认渲染侧边栏时是否传入了服务菜单所需的页面数据(比如servicePages这类变量)
  • 检查my-service-menu.html.twig是否依赖某个全局变量,而侧边栏模板未加载该变量

2. 验证模板路径与命名空间

  • 确认@Storefront命名空间是否正确指向主题模板目录,若使用自定义主题,路径需调整为@YourThemeName/storefront/layout/navigation/my-service-menu.html.twig
  • 核对模板文件是否存在于指定路径,文件名大小写是否匹配(Shopware对路径大小写敏感)

3. 调试模板变量

在my-service-menu.html.twig开头添加调试代码,确认数据是否传递到位:

{{ dump(servicePages) }} {# 替换为菜单依赖的实际变量名 #}

若输出为空,说明数据未传递到侧边栏模板,需在分类页面的模板或控制器中补充数据传递逻辑。

4. 清理缓存与检查模板继承

  • 执行bin/console cache:clear命令清理Shopware缓存,确保模板修改被加载
  • 确认侧边栏模板是否正确继承父模板,未覆盖上下文数据的传递逻辑

5. 检查页面权限与状态

  • 确认服务菜单中的页面是否设置了正确的访问权限,是否处于“已发布”状态
  • 检查页面的分类关联设置,确保这些页面在分类页面上下文允许被列出

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 12:05:28