2
如何获取当前(活动)顶级类别及其子类?获取Magento当前顶级类别
我不想要根类别,只是最高级别的类别及其所有子类别。
如果我在妇女的类别,例如:
Women
- Apparel
-- Shirts
-- Pants
- Accessories
-- Handbags
-- Jewelry
即使我在看的衬衫,我想类别树保持不变。
任何帮助将不胜感激。
如何获取当前(活动)顶级类别及其子类?获取Magento当前顶级类别
我不想要根类别,只是最高级别的类别及其所有子类别。
如果我在妇女的类别,例如:
Women
- Apparel
-- Shirts
-- Pants
- Accessories
-- Handbags
-- Jewelry
即使我在看的衬衫,我想类别树保持不变。
任何帮助将不胜感激。
为了给确切的答案你确切的问题“如何让当前类别及其子类别”:
检索当前类别:
$_currentCategory = $this->getCurrentCategory();
检索其子类别:
$_categories = $this->getCurrentChildCategories();
以上正在目录/导航块中工作。
现在,为了获得您正在谈论的渲染,我认为使用CSS的简单导航块可以实现这一功能。
创建一个导航块,让我们在你的左边列说:
创建模板目录结构的模板文件。在我们的例子: /template/catalog/navigation/thetemplate.phtml
使用该代码来绘制整个类别/子类别结构,而无需修改代码的麻烦(参见[1]在柱的端部。 ...)
检查生成的代码/ CSS,您会看到有所有必需的CSS指针(levelX,active ...)允许您显示或隐藏类别树的部分,因此只显示你喜欢的部分。
结论:CSS足以做你想做的事:)
[1]代码是什么:
<?php $_menu = ''?>
<?php foreach ($this->getStoreCategories() as $_category): ?>
<?php $_menu .= $this->drawItem($_category) ?>
<?php endforeach ?>
<?php if ($_menu): ?>
<div class="THECSS-CONTAINER">
<ul id="THECSS">
<?php echo $_menu; ?>
</ul>
</div>
<?php endif; ?>
我想正是这样,它没有工作对我来说B/CI为使用“可见性”而不是“显示”。非常感谢你让我重新审视它的CSS。你刚刚救了我一大堆头痛 – Booski 2010-06-26 21:43:22