我试图覆盖Mage_Catalog_Block_Layer_Viewmagento.我试图覆盖它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 次 |
| 最近记录: |