子类别shopware5

时间:2016-03-02 06:58:01

标签: shopware

我在Shopware中使用自定义主题,父主题是“Bare”主题,当我需要使用某些数据或更改现有数据时,我仍然不明白如何使用controllr,插件或小部件来执行此操作。

示例: - 我需要在主页主菜单上显示“子类别”。 当我在index.tpl上使用“{debug}”时,我可以看到所有主要类别,但即使我在后端创建并激活了子类别,子类也不可用。

我检查了配置设置,以确保是否有任何内容阻止它显示在前端。 我应该采用什么样的方法来完成这件事。 解决办法是什么? 更新索引控制器? 启用/禁用任何CMS选项? 安装一个插件? 创建一个小部件?

仅供参考:这是我在主页的调试屏幕上看到的内容(index.tpl)

$sCategory
 flag => false
 subcategories => Array (0)
 childrenCount => 2
 7 => Array (23)
 id => 7
 name => "IVORY & WHITE"
 metaKeywords => null 

1 个答案:

答案 0 :(得分:3)

有一个名为AdvancedMenu的插件,必须通过插件管理器激活。在插件的配置中,您可以定义应显示类别深度的嵌套级别。我猜这个设置默认设置为2。激活插件后,Smarty模板中应该有一个新变量$ sAdvancedMenu。

请查看:http://en.community.shopware.com/_detail_1602.html?_ga=1.192119343.464766896.1445350898

另一种方式(没有AdvancedMenu插件)如下:

通过Shopware()->Modules()->Categories()提供了一个Shopware Core类,其中包含一个名为sGetWholeCategoryTree($current)的方法。此方法返回任何给定根类别的整个类别子树。但在这种情况下,您需要创建一个正在侦听Enlight_Controller_Front_PostDispatch事件或任何类似事件的插件。将树分配给视图后,您将可以访问具有相关子级的分层多维数组。