我们重新设计了一家 magento 商店。那家商店有一个非常个性化的搜索结果页面。现在,重新设计后,搜索不再起作用。我将问题分解为 List.php (Mage\Catalog\Block\Product\List.php),_getProductCollection()
调用该函数以获取结果。该函数获取一个层$layer = $this->getLayer();
,与旧版本的主要区别在于:
public function getLayer()
{
$layer = Mage::registry('current_layer');
if ($layer) {
return $layer;
}
return Mage::getSingleton('catalog/layer');
}
在旧版本Mage::registry('current_layer');
中设置。在新版本中它没有设置!如果未设置,它会返回一个return Mage::getSingleton('catalog/layer');
包含所有产品的新产品。
我不能再想了。在旧版本中如何找到该图层的设置位置?我还能做什么?