Share » Forums » Setup & design » filtering search results in search.tpl

filtering search results in search.tpl

filtering search results in search.tpl

Sunday 20 November 2005 2:59:09 pm - 2 replies

Modified on Sunday 20 November 2005 3:01:53 pm by Luke Barton

Author Message

Ɓukasz Serwatka

Sunday 20 November 2005 11:13:34 pm

Hi Luke,

You can create your filter using advancedsearch from and hidden fields:

<form action={"/content/advancedsearch/"|ezurl} method="get">
<input class="searchbox" type="text" size="8" name="SearchText" id="Search" value="" />
<input class="searchbutton" name="SearchButton" type="submit" value="Search" />
<input type="hidden" name="SubTreeArray[]" value="60" />
<input type="hidden" name="SearchContentClassID" value="23" />
</form>

Turn on debug output to check possible errors. Check is attributes of class 23 are searchable.

Try with:

{let search_result=array()
     search_count=array()
     stop_word_array=array()
     search=array()
     page_limit=10
     {*read get variable*}
     search_text=ezhttp('SearchText', 'get')}

{set search=fetch(content,search, hash('text',$search_text,
                                       'subtree_array',array(60),
                                       'class_id',array(23),
                                       'offset',$view_parameters.offset,
                                       'limit',$page_limit))}
{set search_result=$search['SearchResult']}
{set search_count=$search['SearchCount']}
{set stop_word_array=$search['StopWordArray']}

{section loop=$search_result}
	{$item.name}
{/section}

{/let}

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Luke Barton

Wednesday 23 November 2005 12:15:22 pm

Lukasz,

Thanks for much for pointing me in the right direction. My simple search form now filters on node_tree and class_id:

{let search_result=array()
     search_count=array()
     stop_word_array=array()
     search=array()
     page_limit=10
     search_text=ezhttp('SearchText','get')|wash}

{set search=fetch(content,search, hash('text',$search_text, 'subtree_array',array(61, 169, 161), 'class_id',array (1,40,30,23,12,32,43,18,28,19,37,38,27,42,35,41,44,25), 'offset',$view_parameters.offset,'limit',$page_limit))}
{set search_result=$search['SearchResult']}
{set search_count=$search['SearchCount']}
{set stop_word_array=$search['StopWordArray']}

Thanks again.

-Luke

You must be logged in to post messages in this topic!

36 542 Users on board!

Forums menu