在Magento www.example.com中1.9.2.4,我无法创建新块。当我创建一个类文件时,在前端,当我试图获取类名或布局时,它显示“类未找到”。
现有块工作正常,只有新块不工作。
我已在配置xml中定义了块
<?xml version="1.0"?>
<config>
<modules>
<Custom_Homepage>
<version>0.1.0</version>
</Custom_Homepage>
</modules>
<global>
<blocks>
<homepage>
<class>Custom_Homepage_Block</class>
</homepage>
</blocks>
</global>
</config>
<?php
class Custom_Homepage_Block_Product_Slider3 extends
Mage_Catalog_Block_Product_List{
protected function _construct(){
echo 1212;exit;
}
}
?>
并试图在模板文件中调用块:
$this->getLayout()->createBlock('homepage/product_Slider3')
->setTemplate('homepage/catalog/product/category-3.phtml')->toHtml();
2条答案
按热度按时间hfsqlsce1#
尝试使用 Mage _Core_Block_Template而不是Mage_Catalog_Block_Product_List进行扩展。同时更改此
至
要显示此块内容,您还可以像这样调用,因为您没有使用任何前端布局
70gysomp2#
除了Jickson提到的块名称中的拼写错误之外--永远不要在模板中以编程方式创建块。相反,使用Layout XML将块添加到需要从中调用它的块中。然后,在该块的模板文件中使用
$this->getChildHtml()
来调用新块。手动创建它实质上是绕过框架,这违背了使用它的目的。