Magento getSearchCriterias()方法及其数组组成


Magento getSearchCriterias() method and its array composition

我正在查看Mage_CatalogSearch_Block_Advanced_Result类,并且,我不知道为什么,在$searchcriterias数组组合期间,开发人员使用这种奇怪的脚本:

public function getSearchCriterias()
{
    $searchCriterias = $this->getSearchModel()->getSearchCriterias();
    $middle = ceil(count($searchCriterias) / 2);
    $left = array_slice($searchCriterias, 0, $middle);
    $right = array_slice($searchCriterias, $middle);
    return array('left'=>$left, 'right'=>$right);
}

为什么要把数组分成$left和$right?

我猜是可用性的原因。

像这样分割搜索条件可以很容易地将它们显示为2列块(标准Magento模板catalogsearch/advanced/result.phtml使用两个<ul>来实现这一点)。

两列搜索条件块通常比一列搜索条件块占用更小的高度,因此用户将在下一次看到比在1列搜索条件块下看到更多的结果