Секции бокового меню группы — устарело

:warning: Этот компонент темы устарел в пользу Discourse Group Sidebar Menus. Пожалуйста, перейдите на этот компонент: он более безопасен и проще в настройке. Репозиторий больше не будет поддерживаться и будет архивирован примерно 28 февраля 2026 года. | | | | - | - | - | | :information_source: | Краткое описание | Отображение пользовательских разделов навигационного меню для конкретных групп | | :hammer_and_wrench: | Репозиторий | https://github.com/Lillinator/group-menu-sections | | :question: | Руководство по установке | Как установить тему или компонент темы | | :open_book: | Новичок в темах Discourse? | Начинающее руководство по использованию тем Discourse | [wrap=theme-install-button repoName=

27 лайков

Вау, мне это очень пригодилось, очень полезно, большое спасибо. Я люблю вашу работу и ваши компоненты для Discourse.

2 лайка

Спасибо, Тиаго! :blush:

3 лайка

Привет, спасибо за публикацию!

Можно ли использовать этот компонент для добавления пользовательской ссылки, видимой только определённым группам, в верхнюю секцию по умолчанию?

Нет, этот компонент предназначен только для разделов, а не для ссылок. Однако вы можете создать пользовательский раздел, содержащий одну ссылку.

1 лайк

Думаю, я могу добавить эту функцию в будущем. Если вам это действительно нужно, я могу создать для вас отдельный компонент или показать, как это сделать.

4 лайка

Как сделать наоборот — показывать раздел только анонимным пользователям? Я хочу создать отдельные разделы для анонимов и участников форума (зарегистрированных пользователей).

Отличный вопрос. Вот как я бы это сделал:

Шаг 1:

Создайте новую пользовательскую секцию навигационного меню, например, «Меню для анонимов» (назовите её как угодно, но запомните название) и сделайте её общедоступной (установите флажок внизу модального окна).

Шаг 2:

Затем в общем CSS вашей темы или созданного вами компонента темы вставьте этот код CSS. Замените “anon-menu” на слаг названия раздела меню, который вы создали на шаге 1 (например, Custom Section = custom-section).

.sidebar-section-wrapper.sidebar-section[data-section-name="anon-menu"] {
        display: none;
}

.anon .sidebar-section-wrapper.sidebar-section[data-section-name="anon-menu"] {
        display: block;
}
1 лайк

На самом деле, мне нравится эта идея как сценарий использования, и я добавлю её в компонент при следующем обновлении. Я создаю модальное окно с JSON-схемой для настроек компонента, чтобы его конфигурация была более интуитивной.

2 лайка

Спасибо. Это сложнее, чем я ожидал. С точки зрения обслуживания я бы не вспомнил, что я делал, через несколько месяцев.

РЕДАКТИРОВАНИЕ: Моя попытка создать группу анонимных пользователей НЕ работает, потому что это относится только к функции «Анонимно», то есть когда авторизованный пользователь переключается в режим анонимности после входа в систему, а не для действительно анонимных пользователей (пользователей, у которых нет аккаунта).

Ой, извините, я вас неправильно понял — я не понял, что речь идёт об анонимном режиме, я подумал, что вы имеете в виду пользователей, не вошедших в систему. :woman_facepalming:t2:

Ещё одно предложение: было бы здорово, если бы система могла считывать список групп и предлагать выпадающий список для выбора из доступных групп, чтобы избежать опечаток при вводе названий групп.

1 лайк

Да, всё верно, я имею в виду пользователей, не вошедших в систему — тех, кто заходит на сайт, но ещё не авторизовался или не имеет учётной записи.

Я пробовал что-то предложить выше, но это не сработало, так как это совершенно другая функция (это вызвало больше путаницы, чем следовало, и я приношу извинения за это).

Если вы используете мой метод выше, всё должно работать, без использования другой функции анонимного режима :slight_smile:

Но в следующий раз, когда я обновлю этот компонент, что должно произойти скоро, я добавлю некоторые опции специально для анонимных пользователей.

1 лайк

Я буду ждать обновления вашей темы, так как мне неудобно настраивать темы вручную, и это превращается в кошмар для поддержки для «непосвящённых» :slight_smile:

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

Я добавлю эту функцию в ближайшее обновление компонента модификатора меню навигации.

2 лайка

Я обновил этот компонент, добавив выпадающие списки выбора групп, которые заполняются доступными группами. Также увеличил количество разделов меню до восьми и добавил переключатель для иконки глобуса.

2 лайка

Привет!
Я только что установил этот потрясающий компонент темы :ballot_box_with_check:

В процессе настройки у меня возник вопрос:

  1. В инструкции выше вы привели пример названия раздела меню, например, Sectionname Menu=sectionname-menu

image


В моём случае название раздела меню написано на русском, например, «Сотрудники».


Как мне следует написать это название раздела в строке menu 1? Русскими или латинскими буквами?
Может быть, так:

image

или так:

image

Является ли слово “menu” обязательным атрибутом в тексте? :sweat_smile:

Я перепробовал все способы, но ничего не работает.

Я сделал все группы публичными, как указано в инструкции.

  1. Похоже, что с помощью этого компонента темы я не могу настроить видимость раздела «Сообщество» для определённых групп?
1 лайк

О нет, это не так. Я просто использовал его как часть примера названия меню. Например, если название меню «User Info», то оно будет «user-info». Лучший способ — при создании раздела меню использовать название в поле «Заголовок раздела» и преобразовать его в формат ссылок (slug), используя строчные буквы и дефисы вместо пробелов.

Затем в настройках компонента темы укажите следующее:

Думаю, русские? Всё, что указано в поле «Заголовок раздела», которое я отметил стрелкой на первом скриншоте, но в нижнем регистре и с дефисами вместо пробелов.

Я только что протестировал эту конфигурацию на своём скриншоте, и она работает.

Переименовывали ли вы когда-либо раздел сообщества на русском языке? Если нет, то использование «community» должно сработать (я предполагаю, что вы имеете в виду верхний безымянный раздел меню по умолчанию).

2 лайка

If I write the section name in Latin letters, then everything works fine:


And if I write the section name in Cyrillic (Russian), it doesn’t work.