我在帮助器中检索产品所属的所有类别ID:
$productCategories = $this->getProduct()->getCategoryIds();
Run Code Online (Sandbox Code Playgroud)
这给了我一组类别ID.就我而言,每个产品只会在一个子类别中.根据ID,我需要根据哪些类别是子项来确定逻辑顺序.
目的是创建一个方法,我可以调用它并指定产品所需的类别级别,它将返回该类别的路径.
我知道我可以像这样加载一个类别:
Mage::getModel('catalog/category')->load($categoryId)
Run Code Online (Sandbox Code Playgroud)
而且我知道我在PHP中做了什么,但只是稍微坚持逻辑(和方法)来实现我想要的东西.
最简单的方法是测试它是否有与之关联的父ID.parent_id> 0表示它是较低级别的类别.如果parent_id等于1,则意味着它比根类别低一级.
$category = Mage::getModel('catalog/category')->load($categoryId)
echo $category->getParentId();
Run Code Online (Sandbox Code Playgroud)
我建议不要使用原始SQL,因为这是不好的做法,数据库架构可能会在某些时候发生变化.