Magento以某种方式获取类别名称

时间:2013-04-12 14:47:05

标签: magento categories

任何可以帮助我的人?​​

我有一个产品模板,其中显示了自定义标题图像。它的工作原理如下: 当我添加一个带有pagename的静态块然后在其后面添加-header时,会在页面上显示该静态块(标识符)。此块不存在,然后它显示默认标头静态块。

需要做的是获取主类别名称(-header)并将其放在我加载default-header(标识符)的自定义1column-product.phtml模板中。

第77行:

// GET DEFAULT HEADER
echo Mage::getModel(‘cms/block’)-> load(‘default-header’)-> getContent();

'default-header'需要为'categoryname-header'

我不认为这很难,但我不是编码员:(

总代码:

<header>    
<?php echo $this->getChildHtml('header') ?>
<section id="subtop" class="clearfix">
<div class="slideContainer clearfix">

<?php
if ($this->getUrl('') == $this->getUrl('*/*/*', array('_current'=>true, '_use_rewrite'=>true)) ) {
// HOMEPAGE IS TRUE
$cmsBlock = Mage::getModel('cms/block')->load('flexslider')->getContent();
if($cmsBlock) {
echo $cmsBlock;
}
}else{


echo '<div class="pghead clearfix ABC">';           
if(Mage::getModel('cms/block')->load('default-header')->getContent()){
// GET DEFAULT HEADER
echo Mage::getModel('cms/block')->load('default-header')->getContent();
}
// promotion banner
echo '</div>';  
if(Mage::getModel('cms/block')->load('promotion')->getContent()){ ?>
<div class="promotion">
<div class="container">
    <?=Mage::getModel('cms/block')->load('promotion')->getContent(); ?>
</div>
</div>
<? } // promotion banner

} //Flexslider ?>
</div><!-- slidecontainer -->

1 个答案:

答案 0 :(得分:0)

//if you are in category or product page
    $currentCategory = Mage::registry('current_category'); 
//or load category if you are in pages other than product or category page
// $currentCategory = Mage::getModel('catalog/category')->load(12);
    $blockName = $currentCategory->getName().'-header';
    echo Mage::getModel(‘cms/block’)-> load($blockName)-> getContent();

如果您在产品或类别页面中,则可以使用Magento注册表加载当前类别。如果它在其他页面中,那么您需要通过其他方式加载类别。