在显示设置下的类别管理员中,我已分配了一个静态块。这显示正常,但我需要在页面下方进一步定位。我一直在寻找像通用 getChildHtml 这样的回调,但是对于块来说。
我还在想我通常使用的静态块代码可以从
更改<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('block-name')->toHtml();?>
这样的事情
<?php echo $this->getLayout()->createBlock('cms/block')->toHtml();?>
但唉它没用。我可以使用local.xml文件,但我不确定如何定位它。
有点卡住,所以任何帮助都会非常感激
答案 0 :(得分:0)
我想出了一个解决方法。它并不理想,但它正在发挥作用。我没有在类别页面中使用静态块选项,而是将静态块添加到list.phtml模板中。然后我创建一个变量来获取当前的类别名称并将其附加到字符串。
<?php $blockid = 'category_banner_' . preg_replace('/\s+/', '', strtolower(Mage::registry('current_category')->getName())); ?>
然后我可以使用标准静态块调用
来调用它<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId($blockid)->toHtml();?>
最后要做的是制作静态块,只要它名为 category_banner_CATEGORYNAME ,它就可以正常工作。
正如我所说,这是一种解决方法,但对于我的生活,我无法弄清楚如何重新定位管理员中的一套。
如果有人能提出更好的解决方案,我将永远感激