如何用扩展名重写Magento Block?

时间:2015-01-11 17:34:22

标签: magento

我想重写Mage_Catalog_Block_Product_View块。

我创建了这个文件:config.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
  <modules>
    <JB_CustomPrice>
      <version>0.1.0</version>
    </JB_CustomPrice>
  </modules>
  <global>

<blocks>
      <customprice>
        <class>JB_CustomPrice_Block</class>
      </customprice>
      <catalog>
        <rewrite>
          <product_view>JB_CustomPrice_Block_Catalog_Product_View</product_view>
        </rewrite>
      </catalog>
</blocks>
</config>

然后我创建了块 /app/code/local/JB/CustomPrice/Block/Catalog/Product/View.php

<?php
class JB_CustomPrice_Block_Catalog_Product_View extends Mage_Catalog_Block_Product_View
{
   public function getJsonConfig()
   {
      return 'test';
   }
}
?>

尽管如此,产品视图并没有改变,甚至在我调用getProduct()方法时也是如此。出了什么问题?

1 个答案:

答案 0 :(得分:0)

全局错误是一个拼写错误,通过使用Mage::log(get_class($this))来解决,修复了它。问题是另一个插件已经扩展了Mage_Catalog_Block_Product_View。这是一个旧的Yoast_MetaRobots插件,已被弃用。我禁用了它,一切都修好了。谢谢你的回答!