
Лучший Ответ Maksim Buyanov , 09 June 2016 - 14:07
Maksim Buyanov, переход в "папку" сделать не получится, т.к всегда будет переход только в тот пункт меню который выбран в настройках модуля:
Вот решение как сделать каскадное меню в теле фильтра с переход в папку по клику, причем без запуска работы самого фильтра.
Что я сделал:
1. Создал модуль ZOO Категория - он позволил вывести мне список категорий и субкатегорий в них вложенных
2. Вставляю в тело фильтра метку {module Id} - использую плагин NoNumber Modules Anywhere
Сам фильтр лежит /Сайт.ru/public_html/modules/mod_jbzoo_search/renderer/item/horizontal.php
3. В mod_zoocategory я использовал шаблон List - скрин 1.jpg, который нашел тут : /Сайт.ru/public_html/modules/mod_zoocategory/tmpl/list.php
и немного изменил в list.php код:
<input id="go" type="checkbox"/> <div> <b>ВЫБРАТЬ ГОРОД</b> </div> <label for="go" class="st">...</label> <ul class="menu" style=""> <li> <a href="#"> <?php /** * @package ZOO Category * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 only */ // no direct access defined('_JEXEC') or die('Restricted access'); // include css $zoo->document->addStylesheet('mod_zoocategory:tmpl/list/style.css'); echo $zoo->categorymodule->render($category, $params, 0, false, 'class="zoo-category-list layer"', true);?> </a> </li> </ul>
4. Далее меняем стили CSS: /puteshestvuysam.by/public_html/modules/mod_zoocategory/tmpl/list/style.css
/* Copyright (C) YOOtheme GmbH, http://www.gnu.org/licenses/gpl-2.0.htmlGNU/GPLv2 only */ ul.zoo-category-list, ul.zoo-category-list ul { margin: 0; padding: 0; list-style: none; } ul.zoo-category-list ul { padding: 0 0 0 15px; } ul.zoo-category-list li > a { display: block; } .layer { overflow-y: scroll; /* Добавляем полосы прокрутки */ width: 100%; /* Ширина блока */ height: 150px; /* Высота блока */ padding: 17px!important; /* Поля вокруг текста */ border: solid 1px #a0a9af; /* Параметры рамки */ border-radius: 4px; background-color: white; } /*скрываем наше меню и checkbox*/ .menu, #go { display:none; left:-28px; width:100%; /* Ширина Блока со странами */ z-index:1; /* Приподнимаем слой чтобы не было пересечения с чекбоксами ,которые используются в фильтрах ниже */ position:absolute; /* Дочерний элемент вынимаем из общего потока float*/ } /*стилизуем кнопочку*/ .st { position: relative; /* Родительский элемент */ width:100%; /* Ширина строки */ height:28px; /* Высота строки */ padding:0px 0px 0px 20px; background:#ffffff; /* Цвет фона выпадающего списка */ cursor:pointer; /* Курсор в виде руки при наведении */ color:#a2a4a6; /* Закругление краев внутри блока */ border-radius: 3px; /* Цвет текста */ box-shadow: inset 0 0 5px rgba(0,0,0,0.5); /* тень внутри блока */ } /*а вот собственно и само действие*/ #go:checked ~ .menu { display:block; }
Перейти к сообщению
