Компонент позволяет скрывать пустые категории из списка категорий над списком записей.
Сразу договоримся, что пустой считается категория, в которой (и у дочерних которой) нет ни одной записи, ни черновика, ни записи на модерации.
После установки откройте настройки компонента Не показывать пустые категории и выберите типы контента, в которых такое скрытие нужно.
Затем в списке задач планировщика запустите задачу Проверка пустоты категорий. При ее запуске категории без записей будут помечены в базе.
Компонент также отслеживает добавление записей, и снимает флаг пустоты категории при добавлении/редактировании записей.
Скрытие пустых категорий происходит только при выполнении задачи планировщика.
Чтобы эту пометку использовать, нужно внести правки в шаблон, в файл с выводом этих категорий \controllers\content\category_view.tpl.php
В архиве уже есть два этих файла для default и modern шаблона. Чтобы правки не потерялись при обновлении, очень рекомендую сделать дочерний шаблон по инструкции, и скопировать \controllers\content\category_view.tpl.php из родительского шаблона в дочерний шаблон.
Если вы уже вносили правки в этот файл, то добавьте скрытие категории в шаблоне самостоятельно
Откройте файл \templates\ваш_шаблон_или_дочерний\controllers\content\category_view.tpl.php
и ПОСЛЕ
<?php foreach($subcats as $c){
ДОБАВЬТЕ
В качестве демонстрации можно сравнить разделы статей на официальном демо-сайте demo.instantcms.ru/articles и на моем демо demo.bergorod.ru/articles
В моем демо пустой категории Геология нет.
Реклама #
Def 2 года назад #
должно быть классное решение. надо тестить, давно ждали в коробке:)
Demetre 2 года назад #
в NextModern не работает(
Zau4man 2 года назад #
Внесите правки ручками, как описано в конце статьи.
Шаблоном NextModern не пользовался, прокомментировать не могу.
Demetre 2 года назад #
ок, обратимся к разработчику
Юрий Юрьевич 1 год назад #
Добрый день, спасибо, классная разработка.
1) С версией InstantCMS v2.12.2 не будет работать?
Изменения в файл category_view.tpl.php внес
Создал вручную задачу для крона (почему-то не установилась задача), с именем компонента dntshowemptycats и хуком по имени cron_recount. После запуска ничего не происходит
2) А в сайтмапу ссылки на эти страницы тоже попадать не будут?
Zau4man 1 год назад #
1. Не будет, нужно добавить файл манифеста, так как хуки автоматически начали работать только с версии 2.14.2 instantcms.ru/novosti/release2142.html
2. Будут попадать
Юрий Юрьевич 1 год назад #
Заработало)
Вообще я так понял, компонент просто убирает ссылки на страницы категорий только из меню.
Но получается, что по прямой ссылке страница категории активна. И ссылка в сайтмапе еще. Для поисковых систем это не хорошо. То что страницы без контента активны. Я думаю это касается всех проектов, где много разделов/ категорий например интеренет-магазины, доски объявлений и т. д. Такие страницы буду помечаться как малополезные. И так же это отнимает ресурсы краулингового бюджета сайта. Поэтому будет замедлять индексацию новых страниц. В идеале пока страница не без контента, она должна отдавать код 404
Zau4man 1 год назад #
Именно так. В первой же строчке поста написано
Другой функциональности не заявлено...
Yuran 1 год назад #
А для чего тогда вообще их скрывать, если это еще и не полезно для seo? В чем смысл их скрывать и для кого/чего скрывать? Я не к тому, чтобы докапываться до автора… Возможно это и нужное дополнение. Просто объясните какая от него польза. То, что написано в первой строчке поста я читал.