Я немного запутался в том, как пользовательские темы поддерживают цветовые палитры для светлого и темного режимов. Когда я редактирую новую тему и выбираю палитру, я могу выбрать только одну. При предварительном просмотре, когда я использую темный режим, я не вижу выбранную цветовую палитру. Когда я переключил настройки (настройки ОС) на светлый режим, я смог увидеть пользовательскую палитру. Таким образом, мой вопрос заключается в следующем: если тема может выбрать только одну палитру, как мне «привязать» новую тему к пользовательской палитре X для светлого режима и к пользовательской палитре Y для темного режима?
В ваших настройках пользователя, возможно, была установлена другая цветовая схема тёмного режима, отличная от стандартной.
Я полагаю, что вы можете просмотреть все цветовые палитры по адресу /admin/customize/colors.
В настоящее время сайтам необходимо выбрать цветовую схему для тёмного режима — в системе цветовых палитр пока не предусмотрено наличие двух режимов.
Однако мы активно работаем над тем, чтобы сделать это более интуитивно понятным и добавить нативную поддержку светлого и тёмного режимов для всех тем, где выбор будет зависеть от предпочтений пользователя. У нас пока нет точных сроков выпуска этих обновлений, но мы уже продвинулись очень далеко и надеемся вскоре выпустить светлые и тёмные режимы для цветовых палитр (вместе с другими связанными улучшениями).
Мы, однако, уже глубоко в процессе работы, которая сделает это гораздо более интуитивным и добавит нативные светлую и тёмную темы для всех стилей, при этом выбор будет зависеть от предпочтений пользователя.
Но чтобы прояснить: если я не хочу предлагать пользователю варианты выбора, а просто хочу, чтобы сайт имел одну цветовую схему (светлую/тёмную), это возможно, верно?
Я всё ещё немного запутался. Вы имеете в виду, что тема будет использовать выбранный вручную набор цветов для светлого режима, а для тёмного — что-то другое? Если бы я мог редактировать тёмный режим по умолчанию, это подошло бы мне, так как мне не нужно N тем, из которых пользователи могут выбирать. Если это работает, как мне узнать, какую схему нужно редактировать?
Да, это возможно.
Вы создаёте две цветовые палитры (или настраиваете существующие). Я создал свою палитру «Розовая» на основе светлой палитры WCAG, а палитру «Тёмно-розовая» — путём настройки тёмной палитры WCAG. Предполагаю, что вы не хотите, чтобы пользователи выбирали тёмную палитру для светлого режима; в этом случае я бы отключил опцию «Цветовая палитра может выбираться пользователями». Если эта опция отключена для всех палитр, выпадающий список в настройках интерфейса пользователя исчезнет.
Тогда ваши пользователи увидят только
вместо селектора цветов, который вы видите в своих настройках здесь, на Meta.
Установите вашу тёмную палитру как палитру по умолчанию для тёмного режима на уровне всего сайта в настройке default dark mode color scheme ID.
А светлую палитру укажите в настройке цветовой палитры вашей темы.
Текущее ограничение заключается в том, что я не могу легко создать ещё две палитры, например, светлую и тёмную синюю, и позволить пользователям выбирать между розовой и синей. Хотя светлая палитра, связанная с темой, работает корректно, я не могу задать другую тёмную палитру по умолчанию для этой темы. Но если вам нужна только одна светлая и одна тёмная палитра, текущих возможностей достаточно.
Спасибо, попробуем!
Да, с грядущей поддержкой светлых и тёмных палитр это будет легко реализовать. Как отмечает @Moin, подобное уже возможно, но это не самый интуитивный способ.
С предстоящими изменениями все палитры будут включать как светлый, так и тёмный режим в рамках самой палитры. Это касается как цветовых палитр, поставляемых с темами, так и тех, которые вы можете создавать и редактировать в админ-панели. Вы сможете при необходимости задавать значения по умолчанию.
С нетерпением жду. Пришлось перебрать множество тем, чтобы найти эту информацию. Пока буду следовать совету, данному в этой теме.
Можно ли добавить больше переменных в цветовую палитру? Сейчас, похоже, мне приходится ограничиваться только предопределённой переменной.
Это уже реализовано?
Пока нет, но мы добиваемся прогресса. Это наш самый главный приоритет, поэтому ожидайте, что в ближайшие недели начнут появляться некоторые обновления.



