在Prestashop主题中获取分类

ton*_*227 3 smarty prestashop

我想在我header.tpl的Prestashop主题的标题()中获取所有类别,但似乎效果不佳...

我的代码header.tpl:

{$childCategories= Category::getChildren(0, 0, $active = true, $id_shop = false);}
{printf($childCategories)}
Run Code Online (Sandbox Code Playgroud)

问题:错误500

Ruf*_*ein 7

您编写的代码对smarty无效.Prestashop使用Smarty渲染模板.如果你想避免这样的麻烦,请查看规则.此外,您在Prestashop的默认主题中有很多示例,以了解有关Smarty编码的更多信息.

正确的代码是:

{assign var='childCategories' value=Category::getChildren(1, 1, true, false)}
Run Code Online (Sandbox Code Playgroud)

要传递的论据

  1. $ id_parent:父类别ID.root id类别为1,home id类别为2.
  2. $ id_lang:id语言.您可以在本地化区域中查看它以获取语言的ID.如果您启用了多种语言,则可以使用$ language变量来获取ID.Prestashop中的全局变量列表.
  3. $ active:仅返回活跃的护理.
  4. $ id_shop:如果您在安装中有多家商店,则为商店的ID.

打印变量进行调试

如果您想要调试或查看变量,您可以尝试以下代码片段:

{* Print only the variable $childCategories *}
{$childCategories|var_dump}
Run Code Online (Sandbox Code Playgroud)

要么:

{* Print all variables *}
{debug}
Run Code Online (Sandbox Code Playgroud)