Мы в твиттере Мы в телеграме!

Провеббер » DataLife Engine » DLE модули » Автоматический вывод подкатегорий

Набор в команду! Ведется набор в команду, для наполнения сайта новым, интересным контентом. Если у тебя есть предложения, свободное время, ты обладаешь интересным контентом, и хочешь поделиться с другими?
Обращайся к нам в ЛС группы Вконтакте.

Автоматический вывод подкатегорий

Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Автоматический вывод подкатегорий.

Автоматический вывод подкатегорий

У вас на сайте много категорий? И вы их все прописываете в шаблоне вручную? Тогда мы идем к Вам!

Этот простенький модуль предназначен, чтобы хоть немножечко упростить жизнь администраторов и/или разработчиков сайтов.
Не смотря на то, что модуль довольно таки простой, ему можно найти довольно много вариантов применения. Тут уже у кого на сколько хватит фантазии, в пределах возможностей модуля конечно :)

Небольшая ремарка, я рекомендую все сторонние модули размещать в специальной папке ./engine/mods/ (и призываю к этому всех других разработчиков), таким образом все модули находятся в одном месте, а не разбросаны по всевозможным папкам. Для модулей из нескольких файлов там же создаются отдельные папки, например ./engine/mods/orderdesc/.
В итоге все выглядит очень опрятно и не путаются сторонние модули с файлами движка в папке ./engine/modules/.

Приступим, в папке ./engine/mods/ создать файл autocats.php с содержимым:
<?PHP
if(!defined('DATALIFEENGINE'))die("Hacking attempt!");
$cid = isset($parent)?intval($parent):false;
foreach($cat_info as $k=>$v){
    if($cid!==false){
        if($cid==$v['parentid']){
            if($category_id==$k OR $cat_info[$category_id]['parentid']==$k) echo "<li class=\"current\"><a href=\"/".get_url($k)."/\">{$v['name']}</a></li>\n";    //подсветка открытой категории, при заданном параметре parent
            else echo "<li><a href=\"/".get_url($k)."/\">{$v['name']}</a></li>\n";    //просто категория, при заданном параметре parent
        }
    }elseif($category_id==$v['parentid']) echo "<li><a href=\"/".get_url($k)."/\">{$v['name']}</a></li>\n";        //автоматический список подкатегорий из просмотравемой категории
}
?>


Теперь в шаблоне можно подключать следующим образом:
<ul>{include file="engine/mods/autocats.php"}</ul>

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

Можно указать параметр parent=2, где 2 - ID категории.
<ul>{include file="engine/mods/autocats.php?parent=2"}</ul>

Теперь будет выводиться список подкатегорий из родительской категории с указанным ID. При этом есть маленький фокус, своего рода фишка.
Например есть категории:
Фильмы ID = 2
— Русские
— Зарубежные
— Индийские :)
Сериалы ID = 3
— Завершенные
— Снимаются

И если теперь зайти в категорию "Зарубежные" (при заданном параметре parent=2), то этот пункт будет помечен классом "current":
<li><a href="#">Русские</a></li>
<li class="current"><a href="#">Зарубежные</a></li>
<li><a href="#">Индийские :)</a></li>


А так же, помимо этого можно подсвечивать и родительскую категорию при просмотре подкатегории. Но для этого родительский список категорий должен выводиться с указанным параметром parent. parent=0 - это категории первого уровня.
<ul>{include file="engine/mods/autocats.php?parent=0"}</ul>

При таком выводе, если зайти в категорию "Звершенные", то в этом списке будет подсвечена строка "Сериалы":
<li><a href="#">Фильмы</a></li>
<li class="current"><a href="#">Сериалы</a></li>

Но тут ограничение до 1 родительской категории.
Т.е. если у вас категории:
Фильмы
- Русские id=5
- - Боевик

То при просмотре категории "Боевик", категория "Фильмы" уже помеченной не будет. Пометить можно будет только категорию "Русские", если код выводится с указанием parent=5

В общем экспериментируйте, играйтесь, комбинируйте с тегами [category=...]...[/category] и я уверен, у вас получится что-то очень удобное ;)

Если этот модуль оказался вам полезен, буду рад "чаевым" в любых размерах =)
Z753504041409
R181268656057

С уважением,
Олег Александрович a.k.a. Sander


Дополнительные ссылки на скачивание ТОЛЬКО для зарегистрированных


+6
Просмотры: 3 623 :: Комментарии (1) :: :: Нужна помощь? Задайте вопрос на форуме ::
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#1sexo

  • 26 марта 2016 18:06
  • Регистрация: 20.11.2009
  • Был(а) онлайн: 14.07.2016
  • Комментариев: 177
  • 0
Здравствуйте, кто скажет как убрать переносы? То есть сейчас под-категории выводятся так:
под-категория1
под-категория2
под-категория3
под-категория4

А надо, что бы было так - под-категория1, под-категория2, под-категория3,под-категория4

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Архив новостей
Декабрь 2024 (10)
Ноябрь 2024 (9)
Октябрь 2024 (169)
Сентябрь 2024 (13)
Август 2024 (60)
Июль 2024 (12)

Последние комментарии: