【发布时间】:2015-08-13 15:19:18
【问题描述】:
我正在使用 magento。这是加载我的左侧导航栏的代码。它将主要类别加载到 ol.我还想让它加载每个 li 中的子类别。我把 LOAD CHILD CATEGORIES HERE 我想知道获取和显示上述父类别的所有子类别的 php 代码。我找到了几个修复方法,但对 pHp 不太了解导致了一系列错误。
/**
* Category left navigation
*
* @see Mage_Catalog_Block_Navigation
*/
if (!Mage::registry('current_category')) {
//no current category selected so default to showing the Products category
$cur_category=Mage::getModel('catalog/category')->load(51);
$layer = Mage::getSingleton('catalog/layer');
$layer->setCurrentCategory($cur_category);
}else{
//current category selected so display the child categories for it
$layer = Mage::getSingleton('catalog/layer');
$_category = $layer->getCurrentCategory();
$currentCategoryId= $_category->getId();
if($currentCategoryId == 306){
//best sellers is selected so show the Product category
$cur_category=Mage::getModel('catalog/category')->load(51);
$layer = Mage::getSingleton('catalog/layer');
$layer->setCurrentCategory($cur_category);
}
}
$_categories=$this->getCurrentChildCategories();
$_count = is_array($_categories)?count($_categories):$_categories->count();
if($_count):
?>
<div class="box layered-nav">
<div class="head">
<h3><?php echo $this->__('Browse By') ?> PRODUCT CATEGORY</h3>
</div>
<div class="border-creator">
<div class="narrow-by">
<dl id="narrow-by-list">
<dd>
<ol>
<?php foreach ($_categories as $_category): ?>
<?php if($_category->getIsActive()): ?>
<li>
<a href="<?php echo $this->getCategoryUrl($_category) ?>"<?php if ($this->isCategoryActive($_category)): ?> class="active"<?php endif ?>><?php echo $this->htmlEscape($_category->getName()) ?></a>
**LOAD CHILD CATEGORIES IN HERE**
</li>
<?php endif; ?>
<?php endforeach ?>
</ol>
</dd>
</dl><script type="text/javascript">decorateDataList('narrow-by-list')</script>
</div>
</div>
</div>
<?php
endif;
?>
<!-- [ends] .browse-by // -->
到目前为止我想出的最好的,我知道它并不多
<ul class="subnav">
<li><a></a>
</ul>
非常感谢任何帮助
【问题讨论】: