Создаем форму для ввода глобальных пользовательских параметров

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

Данная таблица хранит всю информацию, связанную с вашим веб сервером - имя сайта, описательный слоган, URL и многое другое. Вся информация может быть легко получена с помощью функции get_option(), нужно просто передать имя поля, которое требуется. Например, get_option('home') вернет URL главной страницы.

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

Что должно получиться?
Если вы хотите хранить ваш идентификатор Twitter, просто следуйте инструкциям урока. В результате вы сможете использовать ваш идентификатор Twitter ID с помощью функции get_option(‘twitterid’) в любом месте активной темы вашего сайта на WordPress.

Код
Ниже приводятся шаги с кодом. Нужно поместить данный код в файл functions.php активной темы вашего сайта.

Шаг1. Добавляем меню администратора
Данный код просто добавляет новое меню для администратора:
add_action('admin_menu', 'add_global_custom_options');

Шаг 2. Назначаем функцию для генерации формы администратора
Назначаем функцию, которая будет создавать форму.
function add_global_custom_options()
{
    add_options_page('Глобальные пользовательские параметры', 'Глобальные пользовательские параметры', 'manage_options', 'functions','global_custom_options');
}

Шаг 3. Создаем функцию, которая генерирует форму
<?php
function global_custom_options()
{
?>
    <div class="wrap">
        <h2>Глобальные пользовательские парметры</h2>
        <form method="post" action="options.php">
            <?php wp_nonce_field('update-options') ?>
            <p><strong>Twitter ID:</strong><br />
                <input type="text" name="twitterid" size="45" value="<?php echo get_option('twitterid'); ?>" />
            </p>
            <p><input type="submit" name="Submit" value="Сохранить" /></p>
            <input type="hidden" name="action" value="update" />
            <input type="hidden" name="page_options" value="twitterid" />
        </form>
    </div>
<?php
}
?>

Обратите внимание, что данная форма предназначена для работы только с одним полем. Если вам нужно использовать и другие пользовательские параметры, то нужно выполнить два шага для внесения измений в форму.

1 – Разместить новый блок с уникальным именем. Например, для сохранения ссылки на страницу Facebook можно сделать так:
<p><strong>Ссылка на страницу Facebook:</strong><br />
    <input type="text" name="fb_link" size="45" value="<?php echo get_option('fb_link'); ?>" />
</p>

2 – Обновить значение скрытого поля с именем “page_options”. Для нашего примера изменения будут выглядеть следующим образом:
<input type="hidden" name="page_options" value="twitterid,fb_link" />

Имена параметров добавляются через запятую. Данный шаг необходим.

Как использовать?
После размещения выше приведённого кода в файле functions.php посмотрите на страницу администратора. В меню должен присутствовать новый пункт "Глобальные пользовательские параметры, который будет открывать новую форму. Введите значение, после чего вы сможете использовать его в любом месте темы с помощью функции “get_option(‘twitterid’)”.
Теги:
форма
Добавлено: 08 Мая 2018 16:58:04 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...