Всем привет, сегодня пришла мысль уйти с К2 и перестать пользоваться JA K2 фильтром и переделать все тоже самое (ну почти) на com_content.
Развернул демо сайт:
http://bk.my-joomla.ru/index.php/o-shkole/dokumenty/plan-finansovo-khozyajstvennoj-deyatelnostiДабы фильтр был только в нужных мне категориях, я сделал переопределение пункта меню блога категории. Назначил категории из ссылки выше мой переопределенный макет. И вот что я сделал:
В моем переопределенном файле блога: /templates/leon/html/com_content/category/docblog.php
Сверху добавил обычную форму:
<form>
Заголовок <input type="text" name="title" value="<?php echo $title; ?>">
Номер (пока не работает) <input type="text" name="number" value="<?php echo $number; ?>">
Дата с <input type="date" name="datastart" value="<?php echo $datastart; ?>">
Дата по <input type="date" name="dataend" value="<?php echo $dataend; ?>">
<input type="submit" value="Искать!">
</form>
А ниже где цикл перебора материалов, добавил условие проверки заголовка на совпадение с введенным в фильтр. Если заголовок совпал все выводится как обычно, если не совпал идет continue; цикла и следовательно он не выводится.
<?php foreach ($this->lead_items as &$item) : ?>
<?php
if (substr_count(mb_strtolower($item->title), mb_strtolower($title)) || $title == '') { //Если заголовок совпал с поиском или он пуст
?>
<article class="item leading-<?php echo $leadingcount; ?><?php echo $item->state == 0 ? ' system-unpublished' : null; ?><?php echo $item->featured ? ' item-featured' : ''; ?>"
itemprop="blogPost" itemscope itemtype="http://schema.org/BlogPosting">
<?php
$this->item = & $item;
echo $this->loadTemplate('item');
?>
</article>
<?php $leadingcount++; ?>
<?php } else { continue; } ?>
<?php endforeach; ?>
Тут только про заголовок условие, но и про даты они подобные, условия со своей задачей справляются, есть конечно косяки но они поправимы.
Главная проблема которую я не знаю как решить, это проблема с пагинацией. На этой категории стоит 5 материалов на страницу, фильтр пропускает все которые не подходят, но на пагинацию это никак не влияет, можно ли это как-то решить?