モジュールで提供されている新しいもので Mage_Catalog_Block_Product_Price_Template ブロックとテンプレートをオーバーライドしようとしています。構成を設定することで、ブロックをオーバーライドしても問題ありませんでした。
<global>
<blocks>
<catalog>
<rewrite>
<product_price>ABC_PriceX_Block_Price</product_price>
</rewrite>
</catalog>
</blocks>
</global>
そして、新しいブロックが呼び出されます
<?php
class ABC_PriceX_Block_Price extends Mage_Catalog_Block_Product_Price_Template {
protected function _construct() {
parent::_construct();
Mage::log('I am in ABC block');
$this->setTemplate('pricex/price.phtml');
Mage::log('Template file is '. $this->getTemplateFile() );
}
}
しかし、私は非常に奇妙な動作をしています。価格ブロックはフロントエンドに表示されなくなり、ログファイルに表示されるのは
2012-09-07T18:05:38+00:00 DEBUG (7): I am in ABC block
2012-09-07T18:05:38+00:00 DEBUG (7): Template file is
そして、テンプレートはレンダリングされません:
<p>
<?php Mage::log('I am in ABC template'); ?>
</p>
ここで何か不足していますか?