我想在搜索网址中添加结果数。默认的URL就像是domain.com/catalogsearch/result/?q=queries
但我想在URL中添加类似结果计数,magento目录搜索在网址中添加结果数
`domain.com/catalogsearch/result/?q=queries&count=50`
我试着用下面的事件观察
controller_action_layout_render_before_catalogsearch_result_index
和Observer.php
<?php
class PackgeName_ModuleName_Model_Observer {
// the product list block name in layout
const RESULT_BLOCK_NAME = 'search_result_list';
public function loadResult(Varien_Event_Observer $observer) {
$currentUrl = Mage::helper ('core/url')->getCurrentUrl();
$block = Mage::app()->getLayout()->getBlock (self::RESULT_BLOCK_NAME);
if ($block) {
$collection = $block->getLoadedProductCollection();
/**
* @var Mage_Catalog_Model_Product $product
*/
$count = $collection->getSize();
$resultUrl = $currentUrl . '&count=' . $count;
if ($resultUrl) {
Mage::app()->getResponse()->setRedirect ($resultUrl);
exit(); // stop everything else
}
}
}
}
但问题是它再次触发。所以它进入无限循环。任何想法来解决这个问题或有什么办法来实现这一目标?请帮我..
它会再次击中结果页面,并再次触发相同的观察者。所以它进入无尽的循环.. – Elavarasan