Этот компонент темы устарел в пользу Discourse Indented Subcategories. Пожалуйста, переключитесь на него — он намного проще и удобнее в использовании. Этот репозиторий больше не будет поддерживаться и будет архивирован примерно 20 февраля 2026 года.
Краткое описание
Отступы/вложенность выбранных категорий или подкатегорий в боковой панели
Существует два способа использования этого простого компонента темы: выбрать категории или подкатегории для отступа (или вложенности) в боковой панели; или разрешить отступ для всех категорий, кроме выбранного списка. Большинство людей захотят отступать только подкатегории, чтобы они выглядели вложенными, но вы можете отступать любые из перечисленных категорий. Работает как в десктопном, так и в мобильном представлении, а также в выпадающем меню заголовка. Спасибо @dax за часть кода.
Есть три настройки — используйте только первую или вторую и третью, в зависимости от того, что вам нужно сделать.
Настройка
Описание
indent only select categories
Список выбранных категорий или подкатегорий для отступа.
indent all categories except the following
Включите эту настройку, если хотите отступать все категории, кроме тех, что указаны в настройке списка ниже. Настройка списка выше должна быть пустой.
Примечание: если вы хотите скрыть значок замка на маркерах категорий для приватных категорий, как на моих скриншотах выше, вы можете использовать этот компонент.
Однако это не совсем подходит для моего экземпляра. У меня много подкатегорий и лишь несколько категорий, при этом подкатегории довольно динамичны.
Для нашего экземпляра было бы лучше, если бы все категории и подкатегории по умолчанию были отступлены, а список включал только те категории, которые не должны иметь отступ.
Хм, позвольте мне подумать об этом — я понимаю, что вы имеете в виду. Давайте немного поэкспериментирую с этим, но в любом случае решу вашу задачу (либо через отдельный компонент, либо через несколько дополнительных настроек). Также я думал о добавлении настройки, которая позволяла бы форматировать или скрывать маркеры подкатегорий.
Я обновил компонент, чтобы можно было настраивать вложенные категории наоборот — то есть делать отступ для всех, кроме выбранного списка. Надеюсь, это поможет в вашем случае.
Пожалуйста, обновите этот компонент. Сегодня я выпустил небольшое обновление для исправления проблемы, при которой кнопка «Все категории» также сдвигалась, если использовалась настройка «Сдвигать все категории, кроме следующих».
Есть ли способ адаптировать это для работы также с под-под-категориями?
Таким образом, будет доступно два уровня отступа.
Например:
У нас есть категория «Обучение» с подкатегориями («Инструменты обучения» и «Как это сделать»), а также под-под-категориями «Игры» и «Лучшие практики».
(Обучение — Инструменты обучения — Игры) и (Обучение — Как это сделать — Лучшие практики)
Глаза будут блуждать, потому что ничего не расположено по прямым линиям. Вот почему мы стараемся сохранять одинаковые отступы и другие параметры в текстах, панелях инструментов… При этом также меняются иконки и цвета. Иконка основной категории имеет некоторую смысловую нагрузку, остальные — нет. Это не облегчает навигацию, а наоборот. И всё это в целом является главной причиной, почему глубокое вложение — плохая идея, независимо от того, говорим ли мы о книгах или о вебе. Кроме того, вы теряете драгоценное пространство, а названия категорий перестают быть названиями.
Если у вас действительно огромное количество специфических тем, требующих использования нескольких основных категорий и как минимум такого же количества подкатегорий, потому что у вас множество под-подкатегорий (при этом основные и подкатегории первого уровня служат лишь заголовками, отображающими другие категории), это приведёт к созданию столь длинной боковой панели, что никто не станет её использовать.
Не хочу говорить это вслух, но это выглядит точно так же, как сниппеты CSS, где используются отступы для демонстрации логической структуры пар { }. Это никогда не предназначалось для чтения.
Спасибо за развернутые мысли, @Jagster. Я действительно ценю вашу обратную связь.
Вы затронули много важных моментов, особенно касающихся того, чтобы не делать боковую панель слишком длинной и обеспечить гармоничное сочетание цветов и иконок.
Хотелось бы, чтобы я мог разворачивать вложенные категории по принципу аккордеона — тогда мы получили бы лучшее из обоих миров: компактную боковую панель и при этом быструю навигацию по сайту.
Я бы рекомендовал прочитать эту тему, особенно посты о форуме Wix и простоте его категорий.
Также имейте в виду, что ваши пользователи могут настраивать собственные секции боковой панели категорий.
Честно говоря, я не вижу, как здесь будут работать подкатегории внутри подкатегорий с вложенностью — это, думаю, создаст некоторый визуальный беспорядок. Даже не уверен, что это вообще возможно реализовать в этом компоненте…
Я только что установил это на свой экземпляр, и ни одна из моих подкатегорий не отступает…
По крайней мере, так мне казалось. Я настроил отступ для всех, кроме выбранных, и оставил список пустым.
Сначала я не понял, что отступ применяется ко всему, включая категории.
Можете ли вы обновить это, добавив опцию просто «отступать все подкатегории»? Вы можете добавить список исключений, если хотите, но в моём случае я всегда хочу, чтобы подкатегории имели отступ, а категории никогда не имели отступа.
Для вашего случая почему бы просто не добавить категории в поле «Категории, которые не нужно отступать»?
Согласен, было бы лучше просто отступать подкатегории. Однако на момент, когда @Lilly разрабатывала этот компонент темы, это было довольно сложно реализовать. Лично я считаю предложенное выше решение вполне рабочим, если только ваши категории не являются необычно динамичными.
Пока я здесь…
Запрос функции — раскрывающиеся/скрываемые подкатегории
Обсуждение ведется здесь:
Мне интересно, сработает ли это как расширение данного компонента темы.
Мы могли бы выделить некоторый бюджет на это, если кто-то заинтересован в объединении усилий.
Кстати, я обнаружил, что JS-код, который я добавил (мне пришлось внести в него ещё несколько изменений, которые я могу поделиться), работает как временное решение: он по сути просто сворачивает подкатегории при загрузке страницы и позволяет пользователю разворачивать их или переходить к родительским элементам, добавляя стрелку- Chevron. Единственная проблема заключается в том, что некоторые взаимодействия полностью перезаписывают навигацию, поэтому JS-код должен повторно применять свои классы, чтобы подкатегории оставались свёрнутыми (например, при взаимодействии с гамбургер-меню вверху или на мобильных устройствах).
Конечно, именно это я и делаю. Просто я не сразу «всё понял».
Сейчас это немного раздражает, пока я создаю новый сайт и постоянно добавляю категории и подкатегории. Как только разработка будет завершена, всё будет практически статичным.
Этот компонент темы устарел в пользу Discourse Indented Subcategories. Пожалуйста, переключитесь на него — он гораздо проще и удобнее в использовании. Репозиторий больше не будет поддерживаться и будет архивирован через месяц.