Мне пришлось переписать его как чисто CSS-компонент, так как у меня возникли проблемы со стабильностью административной части версии на JavaScript. Это означает, что вам нужно будет редактировать CSS-селекторы напрямую, чтобы он работал на вашем сайте.
Цель компонента — помочь вам выделить путь, по которому вы хотите, чтобы пользователи двигались.
Ссылка: https://github.com/focallocal/nav-buttons-highlighter
Вот как это выглядит после установки: компонент выделяет плагин Kanban-доски, который большинство пользователей моей платформы не могут найти даже после месяцев участия, особенно те, кто в основном использует мобильные устройства.
Десктоп:
Мобильная версия:
Nav Buttons Highlighter
Компонент темы Discourse, который выделяет кнопки навигации, чтобы направлять пользователей к определенным путям или функциям, которые вы хотите, чтобы они использовали, а также делает выпадающее меню на мобильных устройствах более понятным и заметным.
Назначение
Этот компонент помогает вам:
- Направлять пользователей, выделяя важные ссылки навигации (например, вашу доску задач, документацию или ключевые категории)
- Улучшить мобильный UX, делая кнопку выпадающего меню навигации более заметной
- Создать визуальную иерархию в вашей панели навигации
Возможности
- Чистый стиль кнопок с однотонными цветами и эффектами при наведении
- Настраивается через админ-панель — редактирование CSS не требуется
- Поддержка до 3 пользовательских кнопок навигации
- Адаптивность для мобильных устройств — включает подсветку кнопки выпадающего меню на мобильных
- По умолчанию настроен для плагина Discourse Kanban
- Поддержка выбора цвета для легкой кастомизации
Настройки по умолчанию
По умолчанию этот компонент настроен на выделение плагина Discourse Kanban (ссылка) синим цветом (#4285F4).
Установка
- В административной консоли Discourse перейдите в раздел Настроить → Темы → Компоненты и нажмите Установить.
- Скопируйте ссылку из репозитория Git и вставьте:
https://github.com/focallocal/nav-buttons-highlighter - После установки добавьте компонент в вашу активную тему.
Как настроить
Панель настроек администратора
Вся конфигурация выполняется через простые настройки администратора — редактирование CSS не требуется!
Для настройки:
- Перейдите в Администрирование → Настроить → Темы.
- Нажмите на вашу активную тему.
- Найдите Nav Buttons Highlighter в разделе «Включенные компоненты».
- Нажмите Настройки.
Доступные настройки:
Кнопка 1 — Kanban (по умолчанию):
- Выделить Kanban: Вкл/Выкл (по умолчанию: Вкл)
- Цвет Kanban: Выбор цвета (по умолчанию: синий #4285F4)
- Селектор Kanban: CSS-селектор (по умолчанию:
a.kanban-nav)
Кнопка 2 — Пользовательская:
- Выделить кнопку 2: Включить вторую кнопку (по умолчанию: Выкл)
- Цвет кнопки 2: Выбор цвета (по умолчанию: зеленый #4CAF50)
- Селектор кнопки 2: Введите ваш CSS-селектор (например,
a[href='/page'])
Кнопка 3 — Пользовательская:
- Выделить кнопку 3: Включить третью кнопку (по умолчанию: Выкл)
- Цвет кнопки 3: Выбор цвета (по умолчанию: оранжевый #FF5722)
- Селектор кнопки 3: Введите ваш CSS-селектор
Мобильная версия:
- Выделить выпадающее меню на мобильных: Вкл/Выкл выпадающее меню «Последнее» на мобильных (по умолчанию: Вкл)
- Цвет выпадающего меню на мобильных: Выбор цвета (по умолчанию: синий #4285F4)
Поиск CSS-селекторов:
Чтобы выделить другие ссылки навигации, вам нужно найти их CSS-селектор:
- Откройте ваш форум в браузере.
- Щелкните правой кнопкой мыши по ссылке, которую хотите выделить.
- Выберите «Просмотреть код элемента» (Inspect Element).
- Найдите тег
<a>и обратите внимание на:- Имена классов:
class="kanban-nav"→ используйте:a.kanban-nav - Значение href:
href="/c/support"→ используйте:a[href="/c/support"]
- Имена классов:
Распространенные примеры:
- Плагин Kanban:
a.kanban-nav - Категория поддержки:
a[href="/c/support"] - Тег документации:
a[href="/tags/documentation"] - Пользовательская страница:
a[href="/my-page"] - Вторая кнопка навигации:
#navigation-bar > li:nth-child(2) > a
Выбор цвета:
Используйте HEX-коды цветов (например, #4285F4 для синего). Компонент автоматически генерирует:
- Более светлый оттенок для верхней части градиента
- Более темный оттенок для нижней части/тени
- Цвета для состояний наведения и активности
Популярные цвета:
- Синий:
#4285F4(по умолчанию) - Зеленый:
#4CAF50 - Красный:
#F44336 - Оранжевый:
#FF9800 - Фиолетовый:
#9C27B0
Стабильная версия только на CSS
Если вы предпочитаете прямое редактирование CSS, предыдущая версия (2.0.1) доступна:
Установите версию только на CSS:
https://github.com/focallocal/nav-buttons-highlighter/tree/stable-v2.0.1
Инструкции по редактированию CSS см. в README этой ветки.
Разработка
Этот репозиторий содержит:
common/common.scss— Все стили кнопок и подробное руководство по кастомизацииassets/javascripts/discourse/api-initializers/nav-buttons-highlighter.js— Минимальный инициализатор (требуется для Discourse)about.json— Метаданные компонента
Устранение неполадок
В: Изменения не отображаются
О: После редактирования нажмите «Сохранить» и выполните жесткую перезагрузку страницы форума (Ctrl+F5 или Cmd+Shift+R).
В: Я хочу выделить несколько кнопок
О: Скопируйте весь блок CSS для кнопки и вставьте его под существующим правилом CSS, затем измените селектор и, при необходимости, цвета.
Лицензия
MIT — Public Happiness Movement


