Аварийный выключатель
Если вы попали сюда из поиска, потому что школа сломалась после применения темы, — вот короткий ответ.
Добавьте к адресу любой страницы ?theme=off. Она откроется без темы.
https://school.example.com/admin/settings/appearance?theme=off
Дальше — в раздел «Оформление» и либо откатите к предыдущей редакции, либо верните стандартное оформление одной кнопкой.
Почему это вообще существует #
Первое, что произойдёт в живой школе: технический специалист напишет display: none
не на том селекторе и потеряет доступ к настройкам. Не «может произойти» — произойдёт.
Если при этом закрыт вход в настройки, единственный выход — лезть в базу. Это обращение в поддержку по вине продукта, а не школы. Поэтому выключатель обязателен, а не «хорошо бы».
Три места, где тема не применяется никогда #
Даже если очень постараться.
- Экран входа. Сломать вход в школу нельзя в принципе.
- Настройки школы и настройки аккаунта, включая сам раздел «Оформление». То есть экран, на котором тему чинят, темой не оформляется.
- Любая страница с
?theme=off.
Обратите внимание, чего в этом списке нет: всей остальной админки. Разделы курсов, пользователей, заказов школа вправе перекрашивать — это её рабочие экраны, и запрещать там нечего.
Предупреждение до сохранения, а не после #
Если тема прячет элементы навигации — display: none или visibility: hidden
на якорях меню, — предупреждение показывается до применения, а не после.
Тема, применённая вслепую, и тема, применённая с предупреждением «вы сейчас спрячете боковое меню», — разные события: во втором случае человек либо остановится, либо будет знать, что делает.
Порядок восстановления #
- Откройте любую страницу с
?theme=off. - Перейдите в настройки школы, раздел «Оформление» — он и так открывается без темы.
- Откатите к предыдущей редакции. История правок хранится, и в большинстве случаев этого достаточно: сломала последняя правка.
- Если непонятно, какая именно редакция сломала, — вернитесь к стандартному оформлению одной кнопкой. Тема при этом не удаляется, только перестаёт применяться.
- Найдите ошибку в поле CSS, посмотрите предпросмотр, и только потом применяйте снова.
Как не попадать сюда #
- Пользуйтесь предпросмотром. Он показывает настоящие экраны школы, а не абстрактный пример.
- Меняйте переменные, а не селекторы. Переопределение переменной не может спрятать элемент — оно может сделать его некрасивым, но не недоступным.
display: none— самое опасное, что можно написать в теме. Если он вам нужен, примените тему и сразу пройдите по школе: вход, список курсов, урок, настройки.