除了我将子类别添加到主根类别时获得的常规导航,我希望能够创建新的根类别,为其分配子类别并将其显示为单独的菜单。
这可能吗?
答案 0 :(得分:0)
检索另一个根类别
<?php
echo '<pre>';
$id=9;
$catagory_model = Mage::getModel('catalog/category');
$categories = $catagory_model->load($id); // where $id will be the known category id
if(!empty($categories))
{
echo 'category name->'.$categories->getName(); //get category name
echo '<br>';
echo 'category image url->'.$categories->getImageUrl(); //get category image url
echo '<br>';
echo 'category url path->'.$categories->getUrlPath(); //get category url path
echo '<br>';
}
?>
现在$id=9;
是我的新根类别ID
要检索以下新根类别($id=9;)
的子类别,请参阅以下参考代码。
根据您的要求进行自定义。
<?php $helper = $this->helper('catalog/category') ?>
<?php $categories = $this->getStoreCategories() ?>
<?php foreach($categories as $category): ?>
<?php $subcategories = $category->getChildren() ?>
<?php foreach($subcategories as $subcategory): ?>
<?php $subsubcategories = $subcategory->getChildren() ?>
<?php foreach($subsubcategories as $subsubcategory): ?>
<?php endforeach; ?><!-- end foreach subsubcategories -->
<?php endforeach; ?><!-- end foreach subcategories -->
<?php endforeach; ?><!-- end foreach categories -->
答案 1 :(得分:0)
在一个理想的世界里,你现在已经找到了答案,但是如果你没有修改Nikhil的答案,那么我基本上可以完成你所描述的工作,减去任何便利。 ..
$id=9;
$catagory_model = Mage::getModel('catalog/category');
$categories = $catagory_model->load($id);
if(!empty($categories))
{
$cats = explode(",", $categories->getChildren());
foreach($cats AS $c)
{
$cat = $catagory_model->load(trim($c));
echo '<a href="/'.$cat->getUrlKey().'">'.$cat->getName().'</a>';
}
}
我只是粘贴我用过的东西。现实情况是你必须构建html,以便做到你想做的任何事情。如果循环中有子类别,则必须在foreach部分中运行另一个fetch。
我不熟悉magento足以知道你可以在$ cat对象上运行什么方法。我做了一个print_r($cat)
检查对象,并且幸运地猜到了getUrlKey可用。
Magento ...... pfft!你认为ebay会有比这更高的标准。