[转]Magento Override/Rewrite Resource Model-Bestseller与Flat Catalog Product不兼容

2,745 人次阅读
3 条评论

共计 1109 个字符,预计需要花费 3 分钟才能阅读完成。

Magento Bestseller(热销产品)模块几乎是每个网站不可缺少的,之前用到一个免费的Bestseller插件,各方面都表现很好,不幸在Flat Catalog Product模式下卡了壳,产品图片不能正常显示。不开启Flat Catalog Product吧,又恐太影响性能,很是纠结!

Google了半天,木有。最后自己摸索着写了一个,产品图片正常显示了,其他也一切正常,Perfect!其中涉及到重写Magento的Resource Model核心模块,在config.xml中摆弄Override遇到了麻烦,尝试了几种Rewrite写法,下面的最后一个写法才是正确的。记录一下,以后节省时间。
[php]
<!– 1. error
<catalog>
<rewrite>
<resource_product_collection>Limoon_Bestseller_Model_Resource_Product_Collection</resource_product_collection>
</rewrite>
</catalog>
–>

<!– 2. error
<catalog_resource_product>
<rewrite>
<collection>Limoon_Bestseller_Model_Resource_Product_Collection</collection>
</rewrite>
</catalog_resource_product>
–>

<!– 3. error
<catalog_resource>
<rewrite>
<product_collection>
Limoon_Bestseller_Model_Resource_Product_Collection
</product_collection>
</rewrite>
</catalog_resource>
–>

<!– 4. ok –>
<catalog_resource>
<rewrite>
<product_collection>Limoon_Bestseller_Model_Resource_Product_Collection</product_collection>
</rewrite>
</catalog_resource>

[/php]
Magento Model覆盖/重写语法如下:
[php]
<modulename>
<rewrite>
<modelpath>Class_Name</modelpath>
</rewrite>
</modulename>

[/php]
记住,为了提高Magento性能,千方百计也要启用Flat Catalog Product啊!

正文完
 0
评论(3 条评论)