Настройки – это важная часть любого сайта, ведь именно благодаря им пользователи могут настроить работу сайта в соответствии с собственными предпочтениями. Одним из вариантов настройки является использование произвольных полей, где пользователи могут вводить свои данные. В этой статье мы рассмотрим, как сохранять данные с произвольного поля в настройках и вывести их на сайте.
Для начала нам потребуется создать необходимое произвольное поле в настройках сайта. Для этого мы можем использовать специальную функцию 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". Форма с полем ввода выводится на странице настроек. При сохранении формы данные записываются в базу данных.