Intereting Posts
Как удалить / скрыть всплывающее окно автозаполнения прогноза при вводе тега / термина обмена Как передать переменную для пар ключ / значение в аргументе? Показывать только дочерние объекты (только для поднабора) Пользовательский тип сообщения и пользовательская таксономия 404 на стр. 2 WP Rest API V2 OR Оператор в URL-адресе Полностью отключить виджеты Тематические темы WordPress – начните с другой темы фильтр отображения, у которого есть контент удалять вложения изображений настраиваемого типа сообщений, кроме отображаемого изображения Запрос двух разных типов сообщений с одинаковой таксономией Создание групп пользователей в WordPress Есть ли функция wordpress, которую я могу использовать для извлечения текущей загруженной страницы? Как создать «страницу», используемую для создания PDF? почему изображения не в полном размере? Пользовательская страница SINGLE с настраиваемыми метабоксами и настраиваемым шаблоном

Где я должен использовать get_option в плагине

Я работаю над созданием плагина, который поможет мне в будущих проектах развития. Я хочу убедиться, что я использую лучшие практики, когда я его пишу. Мой вопрос заключается в использовании get_option в моем плагине.

Я установил страницу параметров для плагина и установил там пару вариантов. Лучше проверить опцию на шаге add_action или с добавленной функцией. Я написал короткий пример, чтобы помочь проиллюстрировать мой вопрос. Благодаря!

if ( get_option('my_option[option_1]') ==='1' ) { add_action('init', 'my_action') } 

или

 add_action('init', 'my_action'); function my_action() { if ( get_option('my_option[option_1]') ==='1' ) { //do stuff here } 

Мои мысли в том, что если я сначала проверю get_option, я могу установить его как var в моем плагине, а затем просто проверить var в любое время, когда оно мне нужно. Но, как я уже сказал, я новичок в разработке плагинов, поэтому я не совсем понимаю, как лучше использовать get_option.

Благодаря!

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

Обратите внимание, что вы не можете протестировать такой вариант, если только имя опции действительно 'my_option[option_1]' . Вероятно, вы хотите:

 if ( $test = get_option('my_option') and 1 === $test['option_1'] ) add_action(); 

Расширенный пример:

 $my_options = get_option('my_option'); if ( 1 === $my_options['test_1'] ) add_action( 'init', 'my_init' ); if ( 1 === $my_options['test_2'] ) add_action( 'shutdown', 'my_shutdown' ); // clean up unset( $my_options );