我有点糊涂。我读了Alan关于Magento块生命周期方法的优秀文章,据我所知,应该使用protected _construct()方法初始化块。在我的例子中,我只想设置正确的块模板。所以我想我应该用
protected function _construct()
{
parent::_construct();
$this->setTemplate('stenik/qaforum/forum.phtml');
}但是,当我查看一些Magento核心模块的块时,它们似乎使用了php __construct方法来实现它。例如Mage_Poll_Block_Poll,Mage_ProductAlert_Block_Price,Mage_Rating_Block_Entity_Detailed,Mage_Review_Block_Form
虽然这两种方法都有效,但我想知道什么是正确的方法。
发布于 2013-08-19 16:42:08
它最终是学术性的,但正确的方法是根据核心团队在_construct中的请求覆盖Magento构造函数,即Mage_Core_Block_Abstract
/**
* Internal constructor, that is called from real constructor
*
* Please override this one instead of overriding real __construct constructor
*
*/
protected function _construct()
{
/**
* Please override this one instead of overriding real __construct constructor
*/
}https://stackoverflow.com/questions/18318781
复制相似问题