Intereting Posts
Сжатие миниатюр WordPress зависит от сервера? Как добавить значение custom_meta_box_id? Проверка данных: всегда избегать позднего / выходного кода HTML перевод имени месяца Когда я нажимаю «Добавить продукт» в плагине woocommerce, я получаю пустую белую страницу Добавить контент на страницу без коротких кодов Изменять условное значение переменной для разных каналов wp_insert_post () внутри save_post (): заставить WP не обновлять глобальный объект сообщения? PHP Предупреждение: неверный аргумент, предоставленный для foreach Как добавить подстраницу настроек из плагина на страницу настроек, созданную в теме? Убедитесь, что пользователь уже голосовал Можно ли использовать WP CLI для обновления темы, которая не находится в WordPress Repo? Как перевести get_intermediate_image_sizes? Как я могу исправить: «Примечание: неопределенное смещение: 0»? Есть ли версия WordPress, которая несовместима с PHP 5.3?

Добавление функций к крючкам внутри класса

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

if ( ! function_exists('add_action') ) { header('Status: 403 Forbidden'); header('HTTP/1.1 403 Forbidden'); } add_action('plugins_loaded', array('My_Authentication', 'setup') ); if ( ! class_exists('My_Authentication') ) { class My_Authentication { public function setup() { add_action('wp_login', array(&$this, 'no_auth_allowed') ); add_action('wp_logout', array(&$this, 'no_auth_allowed') ); } public function no_auth_allowed() { wp_die('no authentication for you!'); } } } 

Чтобы выяснить, в чем заключается мой вопрос, почему не no_auth_allowed() функция no_auth_allowed() , когда я wp-login.php страницу wp-login.php ?

Solutions Collecting From Web of "Добавление функций к крючкам внутри класса"

Я создал экземпляр класса и add_action , что в add_action , который перемещается ниже, где создается экземпляр:

 if ( ! function_exists('add_action') ) { header('Status: 403 Forbidden'); header('HTTP/1.1 403 Forbidden'); } if ( ! class_exists('My_Authentication') ) { class My_Authentication { public function setup() { add_action('wp_login', array(&$this, 'no_auth_allowed') ); add_action('wp_logout', array(&$this, 'no_auth_allowed') ); } public function no_auth_allowed() { wp_die('no authentication for you!'); } } $my_auth = new My_Authentication; } add_action('plugins_loaded', array($my_auth, 'setup') );