Intereting Posts
Не удалось получить вложение с помощью wp_mail Можно ли изменить экран администратора медиабиблиотеки? Как установить сценарий, если виджет отображается на странице? Способ сортировки тем WordPress? Создайте новое настраиваемое поле для всех сообщений на основе текущего настраиваемого поля Проблема с get_theme_mod возвращает пустое значение вместо сохраненного значения В большой неприятности – Допустимый размер памяти 268435456 байт исчерпан Запуск WordPress на низкоуровневых аппаратных средствах / ресурсах? Фильтрация списка комментариев администратора для отображения только комментариев от текущего пользователя? Внедрение пользовательского SQL-запроса в страницу / тему Количество сообщений, опубликованных за один конкретный день: более легкий способ URL-адрес URL-адреса пользовательского почтового адреса берет URL-адрес страницы Ограничение фида WordPress до определенного предела символов Только отображение только одной миниатюры Как использовать заголовок видео .webm?

«все» и «get_option»

код: http://pastebin.com/0LEqgRUZ

Я столкнулся с проблемой с моим плагином. (На самом деле это плагин на основе класса) Я пытаюсь использовать функцию get_option . Когда я просто делаю var_dump(get_option('option_name', 1)) где-то в функции plugin_options (вы увидите список кодов) – он выводит int(1)

Проблема в том, что я не могу использовать get_option внутри моего метода log_to . Метод log_to привязан к «все». Поэтому я думаю, поэтому это не работает. (даже wp не загружается вообще)

Кто-нибудь знает разрешение?

get_option запускает крючки, поэтому вы запускаете бесконечный цикл (или нечто подобное, если не бесконечно). Ваши обратные вызовы get_option , которые запускают крючки, используемые get_option . Каждый крючок снова вызывает обратный вызов, который использует get_option который запускает крючки, используемые get_option . И так далее…

Получите значение параметра в конструкторе вне метода обратного вызова. Таким образом, когда ваш обратный вызов работает, он непреднамеренно запускает себя. Доказательство концепции:

 class WP_Test_Logging_Plugin { static $data = array(); public function __construct() { $this->data = get_option('option_name', 1); add_action( 'all', array( $this, 'log_to' ) ); } public function log_to() { $hook = current_filter(); var_dump($hook,$this->data); } } $ntlp = new WP_Test_Logging_Plugin();