我试图覆盖Mage_Catalog_Block_Layer_View
magento.我试图覆盖它Mage_Catalog_Block_Layer_State
并且它正常工作,但layer_view
重写没有.这是一个错误吗?
<global>
<blocks>
<catalog>
<rewrite>
<layer_view>Mymodule_Catalog_Block_Layer_View</layer_view>
</rewrite>
</catalog>
</blocks>
</global>
<global>
<blocks>
<catalog>
<rewrite>
<layer_state>Mymodule_Catalog_Block_Layer_State</layer_state>
</rewrite>
</catalog>
</blocks>
</global>
Run Code Online (Sandbox Code Playgroud)
请帮帮我.我几个小时都在尝试
诊断它的最佳方法是验证类名是否自己重写.在./demo.php
:
<?php
ini_set('display_errors',true);
error_reporting(E_ALL | E_STRICT);
include 'app/Mage.php';
Mage::setIsDeveloperMode(true);
Mage::app();
$layer = Mage::getConfig()->getBlockClassName('catalog/layer_view');
var_dump($layer);
Run Code Online (Sandbox Code Playgroud)
您应该看到返回的自定义模块块类名而不是核心块类名.如果是这种情况,那么您需要逐步确定问题所在.这个块与其他几个块实例高度耦合,可能很难处理.
另请注意,Mage_CatalogSearch
模块有一个layer_view
从Mage_Catalog
layer_view
块延伸的块,它不会使用您的覆盖.
归档时间: |
|
查看次数: |
1303 次 |
最近记录: |