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).

То есть плагин не обязателен — он просто даёт доступ к функциям раньше, чем они станут частью ядра.

Ссылки:

--

Оффициальная документация theme.json: https://developer.wordpress.org/themes/global-settings-and-styles/