我尝试覆盖Mage_CatalogSearch_Model_Query。
现在我尝试尽可能少地做到这一点:
将重写块添加到config.xml
<config>
...
<global>
<models>
...
<catalogsearch>
<rewrite>
<fulltext>MyCompany_CatalogSearch_Model_Query</fulltext>
</rewrite>
</catalogsearch>
</models>
</global>
</config>
添加我的课程
<?php
class MyCompany_CatalogSearch_Model_Query extends Mage_CatalogSearch_Model_Query
{
}
但是我
无效方法MyCompany_CatalogSearch_Model_Query :: prepareResult(Array ( ) )
我没有提供任何prepareResult,但是当我不覆盖Query类时,它正在工作,所以我应该继承这个方法,我想?
我做错了什么?
答案 0 :(得分:2)
看起来你正在尝试重写Mage_CatalogSearch_Model_Fulltext类,而不是Mage_CatalogSearch_Model_Query类。这引发了这个问题。
调用catalogsearch / fulltext时,应该使用prepareResult方法,该方法在catalogsearch / query中不存在。
如果您的目标是重写catalogsearch / query,请以这种方式重写配置:
<catalogsearch>
<rewrite>
<query>MyCompany_CatalogSearch_Model_Query</query>
</rewrite>
</catalogsearch>
如果您的目标是重写Mage_CatalogSearch_Model_Fulltext类,请按以下方式执行:
class MyCompany_CatalogSearch_Model_Query extends Mage_CatalogSearch_Model_Fulltext
{
}
希望它有所帮助。 :)