我需要在响应式菜单中将我的类别树显示为列表。 想法是显示最高级别的类别。并动态创建一个列表,该列表将显示给每个有孩子的类别。
我偶然发现了一段对我有所帮助的代码,但我无法弄清楚如何完成工作。
以下是代码:
<?php
$rootCatId = Mage::app()->getStore()->getRootCategoryId();
function getTreeCategories($parentId, $isChild){
$allCats = Mage::getModel('catalog/category')->getCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('is_active','1')
->addAttributeToFilter('include_in_menu','1')
->addAttributeToFilter('parent_id',array('eq' => $parentId));
$class = ($isChild) ? "sub-cat-list" : "cat-list";
$html .= '<ul class="'.$class.'">';
$children = Mage::getModel('catalog/category')->getCategories(7);
foreach ($children as $category) {
{
$html .= '<li>'.$category->getName()."";
$subcats = $category->getChildren();
if($subcats != ''){
$html .= getTreeCategories($category->getId(), true);
}
$html .= '</li>';
}
$html .= '</ul>';
return $html;
}
$catlistHtml = getTreeCategories($rootCatId, false);
echo $catlistHtml;
?>
提前谢谢。
答案 0 :(得分:0)
您可以使用它来创建类别树:
SPTArtist.artistWithURI(artistUri, accessToken: self.auth.session.accessToken) { error, result in
guard error == nil else {
let alert = UIAlertController(title: "Error", message: error!.localizedDescription, preferredStyle: .Alert)
self.presentViewController(alert, animated: true, completion: nil)
return
}
print("music genres by artist: \(result.genres)")
对于显示/隐藏类别和子类别的效果,您可以使用普通css或jQuery / Prototype。