theme.json
В WordPress 5.8 появился файл theme.json - это новый механизмом настройки редактора блоков, который влияет на фронт и бэк. Он создан чтобы обеспечить стандартизированный (канонический) контроль над настройками блоков.
Внедрение блоков увеличило количество нужных и ненужных настроек для разработчиков и пользователей - это стало проблемой, поэтому был создан файл theme.json
- это единая точка конфигурации, которая включает в себя такие настройки как:
- Какие опции настройки должны быть доступны или скрыты от пользователя.
- Какие цвета, размеры шрифтов... доступны пользователю по умолчанию.
- Определяет макет редактора по умолчанию (ширину и доступные выравнивания).
Настройки для отдельных блоков
Через theme.json можно контролировать настройки на уровне отдельных блоков.
Примеры того, чего можно достичь:
- Использовать определенную предустановку для блока (например, таблицы), но общую для остальных блоков.
- Включить UI-контроль размера шрифта для всех блоков, кроме блока заголовков.
и т.д.
Как подключить файл theme.json?
Чтобы файл theme.json
начал работать, его нужно создать в каталоге темы (в корневой папке темы).
Если в теме нет файла theme.json
, то используется дефолтный файл wp-includes/theme.json.
Плагин Gutenberg
theme.json читают и ядро WordPress, и плагин Gutenberg. Разница в том, что:
- Ядро — содержит стабильную, уже принятые в релиз схему theme.json.
- Плагин Gutenberg — «ночная» сборка редактора. В нём появляются новые/экспериментальные поля theme.json, блоки и API до того, как они войдут в ядро. Плагин ставят разработчики, чтобы протестировать свежие возможности или пользоваться ими на старых версиях WP (< 5.8).
То есть плагин не обязателен — он просто даёт доступ к функциям раньше, чем они станут частью ядра.
Ссылки:
- WordPress plugin: https://wordpress.org/plugins/gutenberg
- Схему расширенных настроек можно посмотреть по этой ссылке https://schemas.wp.org/trunk/theme.json
--
Оффициальная документация theme.json: https://developer.wordpress.org/themes/global-settings-and-styles/