我正在尝试覆盖 Magento 的目录搜索功能,以便它使用“AND”而不是“OR”来搜索搜索词。
这样做的“正确”方法,即更新证明,是创建我自己的模块。所以这就是我所做的。不幸的是,这不起作用。未调用更新的方法。
这是配置文件部分:
<global>
<models>
<catalogsearch>
<rewrite>
<fulltext>MyNameSpace_MyModule_Model_CatalogSearch_Fulltext</fulltext>
</rewrite>
</catalogsearch>
</models>
</global>
我试图覆盖的方法是 Mage_CatalogSearch_Model_Fulltext,我实际上正在做一个“扩展” - 例如,
class MyNameSpace_MyModule_Model_CatalogSearch_Fulltext extends Mage_CatalogSearch_Model_Fulltext
{
public function prepareResult($object, $queryText, $query)
{
die("It works...");
}
}
我在某处读过,如果您实际尝试覆盖的类从未使用特定的类“创建者”方法调用,那么执行此“覆盖”是没有意义的?如果这是真的,这可以解释为什么我的新类方法从未使用过?
那么在那种情况下,如何重写这个方法呢?我在这里做正确的事吗?