Руководство разработчика плагинов для WordPress (часть 30)

API Опций (Options API)

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

Где хранятся опции?

Опции хранятся в таблице {$wpdb→prefix}_options. $wpdb→prefix определена переменной $table_prefix, находящейся в файле wp-config.php.

Как хранятся опции?

Опции могут быть сохранены в базе данных WordPress одним из двух способов: как одно значение или как массив значений.

Одно значение

Имя опции указывает на единственное значение в том случае, когда опция была сохранена как одно значение.

 <?php
 // add a new option
 add_option('wporg_custom_option', 'hello world!');
 // get an option
 $option = get_option('wporg_custom_option');
 

Массив значений

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

 <?php
 // array of options
 $data_r = ['title' => 'hello world!', 1, false];
 // add a new option
 add_option('wporg_custom_option', $data_r);
 // get an option
 $options_r = get_option('wporg_custom_option');
 // output the title
 echo esc_html($options_r['title']);
 

Если вы работаете с большим количеством взаимосвязанных опций, сохранение их в качестве массива может иметь позитивное влияние на производительность всей системы. Доступ к данным как индивидуальным опциям может привести ко множеству отдельных транзакций к базе данных, и как правило, транзакции к базе данных являются «дорогостоящими» операциями (в терминах времени и ресурсов сервера). Когда вы сохраняете или получаете массив опций, это происходит как одна транзакция, что является идеальным в данном случае.

Справка по функциям

Добавить опцию Получить опцию Обновить значение опции
add_option() get_option() update_option()
add_site_option() get_site_option() update_site_option()

Добавить комментарий