Я создал тему, но не хочу, чтобы её могли использовать обычные пользователи.
Могу ли я использовать тему, не отмечая опцию «Тему могут выбирать пользователи»? (Я администратор.)
Я создал тему, но не хочу, чтобы её могли использовать обычные пользователи.
Могу ли я использовать тему, не отмечая опцию «Тему могут выбирать пользователи»? (Я администратор.)
Я имел в виду как основную тему, то есть основную тему для меня. Не просто предпросмотр, так как предпросмотр вернётся к обычному виду без опции предпросмотра в URL
У администраторов и модераторов к элементу body страницы присвоен класс .staff, поэтому в теме вы можете сделать что-то вроде этого:
body.staff {
// ваш CSS для темы администраторов здесь
}
Обычный пользователь может добавить класс staff к своему тегу body (через инспектор браузера) и увидеть тему, но я не уверен, зачем кто-то стал бы тратить на это время.
Для более продвинутых тем, если вы используете точку подключения плагина или изменяете HTML с помощью переопределений шаблонов (см. Руководство разработчика по темам Discourse), вы можете сделать что-то вроде этого:
{{#if currentUser.staff}}
<h1>привет, администраторы и модераторы!</h1>
{{/if}}
a) Я не использую CSS в своей теме — только цветовую палитру.
b) В любом случае потребуется указать тему как доступную.
Вы можете переопределить цветовую схему с помощью CSS (подробнее здесь: Update themes and plugins to support automatic dark mode). В противном случае вам потребуется создать собственный плагин, чтобы разрешить администратору использовать другую тему, так как эта функция в Discourse отсутствует.
Идея заключается в том, чтобы разместить CSS для администратора в вашей теме по умолчанию; если кто-то не станет углубляться в ваш CSS, только вы сможете увидеть и использовать его.
Другой вариант — использовать браузерный плагин, например Stylish, для настройки пользовательского CSS локально.