API опций (settings опции параметры) (метка)

API опций — это базовый способ сохранить или получить данные из БД. API упрощает создание/получение/обновление/удаление параметров. Все данные сохраняются в таблице wp_options с указанным названием опции.

Обратите внимание, что функции, содержащие в названии слово _site_ или _network_, делают то же самое, что и их версии без этого слова. Однако, если включен Multisite режим, то опции хранятся в таблице wp_sitemeta и используются для сети сайтов.

О структуре опций в режиме Мультисайт

При установке Multisite структура опций сайтов расширяется.

В WordPress есть четыре похожие функции:

  1. get_network_option()
  2. get_site_option()
  3. get_blog_option()
  4. get_option()

Эти функции можно собрать в группы:

get_network_option() = get_site_option()
get_blog_option() = get_option()

Подробнее читайте в разделе: Структура сайтов и блогов.

Пример

// Создаём параметр в базе данных
add_option( $option, $value = '', $deprecated = '', $autoload = 'yes' );

// Удаляем параметр по имени
delete_option( $option );

// Получаем сохранённый параметр
get_option( $option, $default = false );

// Обновляем значение уже добавленного параметра
update_option( $option, $newvalue );
add_network_option()

Добавляет настройку сети. Используется при мультисайт сборке.

add_option()

Добавляет настройку в Базу Данных (название и значение опции). Ничего не делает, если опция уже существует.

delete_option()

Удаляет настройки (запись из таблицы wp_options в БД).

get_network_option()

Получает значение указанной опции сети (основного сайта в сети мультисайт).

get_option()

Получает значение указанной настройки (опции).

get_site_option()

Получает указанную опцию главного сайта текущей сети.

register_setting()

Регистрирует новую опцию и callback функцию для обработки значения опции при её сохранении в БД.

update_option()

Обновляет значение опции (настройки) в базе данных. Ожидает не экранированную строку.

update_site_option()

Обновляет или добавляет указанную опцию для текущего сайта (текущей сети блогов). Для сети мультисайтов.