В дополнение к существующим в модуле mod_tienda_search полям для поиска Товар, Категория, можно добавить дополнительные поля, например, поле Производитель, Цена от и Цена до.

Для этого в файле модуля mod_tienda_search.php добавляем такие строчки:

$filter_price_from = $params->get('filter_price_from', '1');
$filter_price_to = $params->get('filter_price_to', '1');
$manufacturer_filter = $params->get('manufacturer_filter', '1');

Но этот код можно не добавлять, он добавляется в случае когда мы добавили соответствующие поля в xml файл и используется для проверки нужно выводить поле фильтра или нет. Для упрощения этот код можно не добавлять.

Какие поля можно еще добавить можно посмотреть в файле administrator\components\com_tienda\controllers\products.php 

$state['filter_price_from'] = $app->getUserStateFromRequest($ns.'price_from', 'filter_price_from', '', '');

Теперь в раскладке модуля tmpl/default.php добавим такой код:

<div style="padding:0 0 8px 0;">
<?php
$filter_value = JRequest::getVar(&#39;filter&#39;, &#39;&#39;);
$filter_price_from_value = JRequest::getVar(&#39;filter_price_from&#39;, &#39;&#39;);
$filter_price_to_value = JRequest::getVar(&#39;filter_price_to&#39;, &#39;&#39;);
?>
<table class="tblfilter">
<tr>
<td>
<label for="filtertextm">Наименование товара:</label><br />
<input style="width:200px;" class="tsearchwords" type="text" name="filter" value="<?php echo $filter_value; ?>" id="filtertextm" onclick="this.value=&#39;&#39;;"/>
</td>
<td>
<label for="filter_manufacturer">Производитель:</label><br />
<?php echo TiendaSelect::manufacturer($filter_manufacturer, &#39;filter_manufacturer&#39;, &#39;&#39;, &#39;&#39;, true, false, &#39;Все производители&#39;, &#39;&#39;, &#39;1&#39;); ?>
</td>
<td>
<label for="filter_price_from">Цена от:</label><br />
<input style="width:70px;" class="tsearchwords" type="text" id="filter_price_from" name="filter_price_from" value="<?php echo $filter_price_from_value; ?>" />
</td>
<td>
<label for="filter_price_to">до:</label><br />
<input style="width:70px;" class="tsearchwords" type="text" id="filter_price_to" name="filter_price_to" value="<?php echo $filter_price_to_value; ?>" />
</td>
<td style="vertical-align:bottom;">
<input class="button" style="width:150px;margin-top:8px;" type="submit" value="<?php echo JText::_( "Submit" ); ?>" />
</td>
</tr>
</table>
</div>

Теперь можно задать условие поиска и посмотреть, что получится. У меня в случае включенного SEF не работала пагинация на странице вывода результатов поиска) Но об этом наверное потом...

Чтобы сделать комментарий, нужно авторизоваться на сайте!