我已经为Magento提供了一个相当不错的菜单。但是我希望通过添加活动类来获得更多功能。现在,我不是一个php wiz,实际上我并不熟悉它,但是由于逻辑和反复试验,我走了很长一段路。但我认为这可能是我已经尝试过的小事,但在这个设置中没有正确或不容易。
所以,我正在寻找一种方法,在类别处于活动状态时,将活动类添加到<a>
标记,和/或子类别处于活动状态。
这就是菜单现在如何运作的方式:
<?
$_category = $this->getCurrentCategory();
$subcatid = $_category->getId();
$parentCategory = Mage::getBlockSingleton('catalog/navigation')->getCurrentCategory()->parent_id;
$name = $_category->getName();
$root_category = Mage::getModel('catalog/category')->load($subcatid);
$subcategories = $root_category->getChildren();
$subcategories2 = $root_category->getChildrenCategories();
?>
<nav id="vert-nav" class="custom-left-menu" role="navigation">
<span class="menu-h3">
<?php $level = $this->getCurrentCategory()->getParentCategory()->getLevel();
if($level > 1){
echo '<a itemprop="url" href="'.$this->getCurrentCategory()->getParentCategory()->getName().'" title="'.$this->getCurrentCategory()->getParentCategory()->getName().'"><span itemprop="name">'.$this->getCurrentCategory()->getParentCategory()->getName().'</span></a>';
}
else{
echo '<a itemprop="url" href="'.$this->escapeHtml($_category->getName()).'" title="'.$this->escapeHtml($_category->getName()).'"><span itemprop="name">'.$this->escapeHtml($_category->getName()).'</span></a>';
}
?>
</span>
<ol>
<?php
$_anyActive = false;
foreach ($this->getStoreCategories() as $_category) { $_anyActive = $_anyActive || $this->isCategoryActive($_category); }
?>
<?php if($subcategories != "")
{
foreach ( $subcategories2 as $subCategory )
{
$subCategory->load();
if( $subCategory->getIsActive() && $subCategory->getIncludeInMenu() )
{
echo '<li><a itemprop="url" href="'.$subCategory->getURL().'" title="'.$subCategory->getName().'"><span itemprop="name">'.$subCategory->getName().'</span></a></li>';
}
}
}
else
{
$root_category = Mage::getModel('catalog/category')->load($parentCategory);
$subCategories = $root_category->getChildrenCategories();
foreach ( $subCategories as $subCategory )
{
$subCategory->load();
if( $subCategory->getIsActive() && $subCategory->getIncludeInMenu() )
{
echo '<li><a itemprop="url" href="'.$subCategory->getURL().'" title="'.$subCategory->getName().'"><span itemprop="name">'.$subCategory->getName().'</span></a></li>';
}
}
}
?>
</ol>
</nav>
&#13;
所以我需要的是,它增加了&#34; active&#34; <a>
标记处于活动状态时的类,无论是否为(最好)是否为子菜单项。
我尝试了一些事情,但我认为由于缺乏知识,我实施的是错误的。任何人都可以帮助=)
更新 忘记提及,它是magento,点击链接时页面重新加载。