Как сохранить данные с произвольного поля в настройках и позже вывести данные на сайте?

Настройки – это важная часть любого сайта, ведь именно благодаря им пользователи могут настроить работу сайта в соответствии с собственными предпочтениями. Одним из вариантов настройки является использование произвольных полей, где пользователи могут вводить свои данные. В этой статье мы рассмотрим, как сохранять данные с произвольного поля в настройках и вывести их на сайте.

Для начала нам потребуется создать необходимое произвольное поле в настройках сайта. Для этого мы можем использовать специальную функцию add_settings_field(). Эта функция принимает несколько параметров, включая название поля, функцию отображения поля, опцию, к которой будет привязано поле, и страницу, на которой будет отображаться поле.

Пример кода:

function my_field_callback() {

  // Код для отображения произвольного поля

}

function my_plugin_settings() {

  add_settings_field(‘my_field’, ‘Мое произвольное поле’, ‘my_field_callback’, ‘general’, ‘default’);

}

add_action(‘admin_init’, ‘my_plugin_settings’);

После создания произвольного поля и отображения его на странице настроек, мы можем перейти к сохранению введенных в поле данных. Для этого нам потребуется использовать функцию register_setting(). Эта функция принимает несколько параметров, включая название опции, название группы настроек и функцию обратного вызова, которая будет выполняться при сохранении данных.

Теперь, когда мы сохранили данные с произвольного поля, нам нужно вывести их на сайте. Для этого мы можем использовать функцию get_option(), которая позволяет получить значение опции. Мы также можем использовать функцию esc_html() для защиты от возможных атак.

Сохранение данных настройки

Для сохранения данных с произвольного поля настройки в WordPress, необходимо использовать функцию register_setting и обработчик данных формы.

В функции register_setting первым параметром указывается название группы настроек, а вторым параметром — название ключа данных, которые необходимо сохранить.

Для создания формы на странице настроек нужно использовать функцию settings_fields, которая автоматически добавит скрытые поля с токенами безопасности. В форме настройки можно использовать теги input, select, textarea и другие элементы HTML.

В обработчике данных формы необходимо получить значения полей с помощью функции get_option и сохранить их с помощью функции update_option.

Пример кода:


// Регистрация настроек
function wpdocs_register_settings() {
register_setting( 'myplugin_settings', 'myplugin_option' );
}
add_action( 'admin_init', 'wpdocs_register_settings' );
// Вывод формы на странице настроек
function wpdocs_render_form() {
settings_fields( 'myplugin_settings' );
$option = get_option( 'myplugin_option' );
?>
Мои настройки

В данном примере создается настройка с названием "Мои настройки". В коде указано, что данные этой настройки хранятся в опции с ключом "myplugin_option". Форма с полем ввода выводится на странице настроек. При сохранении формы данные записываются в базу данных.