magento在产品列表页面中获取子类别ID
我只需要为特定的magento在产品列表页面中获取子类别ID,magento,Magento,我只需要为特定的子类别=35在产品列表页面中添加CMS页面。我尝试的方法是编辑视图.phtml echo $this->getLayout()->createBlock('cms/block')->setBlockId('adminCMSid')->toHtml() 但是如果当前产品的子类别等于35,我需要比较in view.phtml。 有人能帮助我如何获取当前子类别ID并解决问题吗? <?php $_categories = $this->getCurr
子类别=35
在产品列表页面中添加CMS页面。我尝试的方法是编辑视图.phtml
echo $this->getLayout()->createBlock('cms/block')->setBlockId('adminCMSid')->toHtml()
但是如果当前产品的子类别等于35,我需要比较in view.phtml。
有人能帮助我如何获取当前子类别ID并解决问题吗?
<?php $_categories = $this->getCurrentChildCategories() ?>
<?php foreach ($_categories as $_category): ?>
<?php if ($_category->getId() == 35) {
//Subcategory id equals 35
}?>
<?php endforeach; ?>
简短回答:
在目录/视图.phtml中:
<?php
$_categories = $_product->getCategoryIds();
foreach($_categories as $category){
if($category == 35){
echo $this->getLayout()->createBlock('cms/block')->setBlockId('adminCMSid')->toHtml();
break; //stop the loop
}
}
?>
刷新产品页面,然后进入var/logs文件夹,您将找到finddata.log文件。
在那里,您可以看到该产品的类别以及可以使用的阵列详细信息
然后你可以这样做:
$_categories = $_product->getCategoryIds();
var_dump($_categories);
这将为您提供给定产品的类别数组。这样更容易测试和找到方法。我没有让它与$this->getCurrentChildCategories()一起使用。查看此内容时,您必须在catalog/product/list.phtml中才能使用它。这是克劳迪乌在上面发布的另一种方法,你会发现万磁王有很多很棒的方法,希望这能在将来帮助其他人:-)
$_categories = $_product->getCategoryIds();
var_dump($_categories);