1

我在帮助器中检索产品所属的所有类别 ID:

$productCategories = $this->getProduct()->getCategoryIds();

这给了我一个类别 ID 的数组。就我而言,每种产品都只会属于一个子类别。从 ID 中,我需要根据哪些类别是哪些类别的子项来确定逻辑顺序。

目的是创建一个我可以调用的方法,并指定我想要的产品类别级别,它将返回该类别的路径。

我知道我可以像这样加载一个类别:

Mage::getModel('catalog/category')->load($categoryId)

而且我知道我在 PHP 中正在做什么,但只是有点停留在使用这里来实现我想要的逻辑(和方法)上。

4

1 回答 1

6

最简单的方法是测试它是否有关联的父 ID。parent_id > 0 表示它是较低级别的类别。如果 parent_id 等于 1,则意味着它比根类别低一级。

$category = Mage::getModel('catalog/category')->load($categoryId)
echo $category->getParentId();

我建议不要使用原始 SQL,因为这是不好的做法,数据库架构可能会在某些时候发生变化。

于 2012-09-11T16:44:44.410 回答