您的位置:首页 > 其它

magento--搜索功能添加分类选项!

2011-07-19 09:32 489 查看
magento的搜索是没有分类条件的,我们可以给他加上这个条件,在综合站搜索比较精准一些!

当然,magento的搜索设置也要设置好,太模糊的搜索会造成搜索的不精准。

下面是代码,覆盖文件template/catalogsearch/form.mini.phtml文件即可~!!!!

<?php

$category = Mage::getModel('catalog/category');

if(is_object(Mage::registry('current_category'))){

$current_category_path=Mage::registry('current_category')->getPathIds();

}else{

$current_category_path = array();

}

$category->load(Mage::app()->getStore()->getRootCategoryId());

$children_string = $category->getChildren();

$children = explode(',',$children_string);

$extra_options='';

foreach($children as $c){

$selected = (in_array($c, $current_category_path))?'SELECTED':'';

$extra_options.= '<option value="' . $c . '" ' . $selected . '>' . $category->load($c)->getName() . '</option>' . "\n";

}

?>

<form id="search_mini_form" action="<?php echo $this->helper('catalogSearch')->getResultUrl() ?>" method="get">

<fieldset>

<legend><?php echo $this->__('Search Site') ?></legend>

<div class="mini-search">

<input id="search" type="text" class="input-text" name="<?php echo $this->helper('catalogSearch')->getQueryParamName() ?>" value="<?php echo $this->helper('catalogSearch')->getEscapedQueryText() ?>" />

<select name="cat" id="cat" class="input-text">

<option value="">All Departments</option>

<?= $extra_options ?>

</select>

<input type="submit" value="Go" style="border: 1px solid #808080;" alt="<?php echo $this->__('Search') ?>" />

<div id="search_autocomplete" class="search-autocomplete"></div>

<script type="text/javascript">

//<![CDATA[

var searchForm = new Varien.searchForm('search_mini_form', 'search', '<?php echo $this->__('search site...') ?>');

searchForm.initAutocomplete('<?php echo $this->helper('catalogSearch')->getSuggestUrl() ?>', 'search_autocomplete');

//]]>

</script>

</div>

</fieldset>

</form>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: