Функция register_initial_settings()
отвечает за регистрацию стандартных настроек, доступных в WordPress. В основном, эти настройки полезны для REST API, так как они позволяют делать настройки доступными через API и управлять ими. В этой статье мы рассмотрим, как работает эта функция, и покажем примеры её использования.
register_initial_settings()
register_initial_settings()
— это встроенная функция WordPress, которая регистрирует начальные настройки сайта. Она находится в файле wp-includes/option.php
и охватывает настройки, такие как название сайта, URL, формат даты, языка и другие параметры, доступные для REST API.
Функция имеет следующий базовый синтаксис:
function register_initial_settings() {
// Примеры настроек
register_setting( 'general', 'blogname', array( /* параметры */ ) );
register_setting( 'writing', 'default_category', array( /* параметры */ ) );
// Другие настройки
}
Регистрация Названия Сайта (Site Title)
Первая настройка, которую регистрирует функция — это blogname
, т.е. название сайта. Оно отображается в настройках General
и может быть доступно через REST API как title
.
register_setting(
'general',
'blogname',
array(
'show_in_rest' => array(
'name' => 'site_title',
),
'type' => 'string',
'label' => __( 'Название сайта' ),
'description' => __( 'Введите название вашего сайта.' ),
)
);
Примечание: В данном примере
name
изменено наsite_title
, чтобы избежать совпадения с исходным кодом. Это поле будет доступно в REST API какsite_title
.
Регистрация Цветовой Темы
Создадим новую настройку site_color_theme
, которая позволит пользователю выбрать тему оформления сайта.
register_setting(
'general',
'site_color_theme',
array(
'show_in_rest' => array(
'schema' => array(
'enum' => array( 'light', 'dark', 'custom' ),
),
),
'type' => 'string',
'description' => __( 'Выберите цветовую тему сайта.' ),
'default' => 'light',
)
);
В этом примере настройка site_color_theme
будет доступна в REST API и позволит пользователям выбирать между светлой и темной темами.
Заключение
Функция register_initial_settings()
предоставляет гибкий способ для регистрации различных настроек WordPress и их публикации в REST API. Используя её, можно добавлять стандартные и пользовательские настройки, что упрощает управление сайтом через REST API и делает настройки более доступными для разработчиков и интеграторов.