Способы объявления параметров поисковой выборки

Поисковую выборку можно настраивать с помощью параметров. Параметры можно объявлять как в дескрипторе, так и в шаблоне (в форме поискового запроса или в URL).

Имена параметров во всех способах – одни и те же, различаются способы записи, так как при объявлении параметров в шаблоне (в виде html-кода), значения можно записывать только как строковые данные.

Подробности о каждом параметре можно можно узнать в следующий статьях:

Ниже приведены примеры объявления параметров поисковой выборки.

Объявление параметров в дескрипторе

Это наиболее предпочтительный способ объявления параметров, так как он не загромождает код выводимой страницы.

.tdd
<?php
. . .
$params['search']['highlight']    = true;// Выделять найденные поисковые слова
$params['search']['fields'] = [1,2];// Искать в полях 1,2 по одному запросу 
$params['search']['where']  = 'start';// Поиск только в начале текста
. . .
?>

.tpl
<form action="?page=<?=$page?>" method="post">
    <input type="text"   name="search">
    <input type="hidden" name="block" value="<?=$block?>">
    <input type='submit' value='Искать'>
</form>

В следующих ниже способах параметры объявляются в шаблоне. Эти методы можно использовать, когда необходимо программно изменять поисковые параметры выборки.

Объявление параметров в поисковой форме (в шаблоне)

.tpl
<form action="?page=<?=$page?>" method="post">
    <input type="text"   name="search">
    <input type="hidden" name="block" value="<?=$block?>">
    <input type="hidden" name="highlight"    value="1">
    <input type="hidden" name="fields" value="1,2">
    <input type="hidden" name="where"  value="start">
    <input type="submit" value="Искать">
</form>

Объявление параметров в URL (в шаблоне)

.tpl
<?php
echo'<a href="';
    echo'?page='.$page.'&block='.$block.'&search='.urlencode('Продам Ford Focus');
    echo'&highlight=1';
    echo'&fields='.urlencode('1,2');
    echo'&where=start';
echo'">Продам Ford Focus</a>';
?>

См. также