Intereting Posts
Как разместить несколько галерей изображений в одном посте? Невозможно сделать изображения продукта интерактивными Как правильно перенести мой сайт из одного домена в другой? Отображение списка дочерних сообщений в родительских сообщениях типа персонализированного сообщения 404 ошибок при обновлении параметров в панели управления администратора Как удалить стили CSS по умолчанию на странице wp-login.php? Проблема при добавлении пользовательских ссылок или страниц в мое меню Как я могу сделать этот плагин переведенным? Поддельный одиночный WordPress Post (Page) Loop Отправить уведомление в WordPress Theme Почему тема вставляет раздел комментариев, если я не сбрасываю свой пользовательский WP_Query? Выполнение перенаправления после действия пользователя Добавление модального диалога jQuery в область администратора Добавить текущий элемент меню CSS в специальный архив типа страницы в меню WordPress Было ли что-нибудь, мешающее мне удалять оба wp_head и wp_footer?

add_action в пользовательском плагине

Я сделал плагин, чтобы создать, когда файл cookie FALSE. Фактически, он работал, но когда я собирался создать файл cookie, он сказал, что мой заголовок уже отправлен.

Затем у меня был код add_action('init', 'newsletterSuscriber'); но он по-прежнему возвращает ошибку, подобную этой.

Предупреждение: call_user_func_array () ожидает, что параметр 1 является действительным обратным вызовом, функция «newsletterSuscriber» не найдена или неверное имя функции в /PATH/wp-includes/plugin.php в строке 503

Код плагина

  class Okidoo_Newsletter_Suscriber { /** * Initializes the plugin. * * To keep the initialization fast, only add filter and action in the constructor. */ public function __construct() { add_shortcode( 'custom-suscribe-form' , array( $this, 'render_suscribe_form') ); add_action( 'init', 'newsletterSuscriber' ); } /** * A shortcode for rendering the login form. * * @param array $attributes Shortcode attributes. * @param array $content The text content for shortcode. Not used. * * @return string The shortcode output */ public function render_suscribe_form( $attributes, $content = null ) { // Parse shortcode attributes $default_attributes = array( 'show_title' => false ); $attributes = shortcode_atts( $default_attributes, $attributes ); $show_title = $attributes['show_title']; // Pass the redirect parameter to the WordPress login functionnality : by default, // don't specify a redirect, but if a valid redirect URL has been passed as // request parameter, use it. $attributes['redirect'] = ''; // Render the login form using an external template. return $this->get_template_html( 'subscription_form', $attributes ); } /** * Render the contents of the given template to a string and returns it. * @param string $template_name The name of the template to render (without .php) * @param array $attributes The PHP variables for the template * * @return string The contents of the template. */ private function get_template_html( $template_name, $attributes = null ) { if ( ! $attributes ) { $attributes = array(); } ob_start(); do_action( 'personalize_div_before_' . $template_name ); require( 'templates/' . $template_name . '.php' ); do_action( 'personalize_div_before_' . $template_name ); $html = ob_get_contents(); ob_end_clean(); return $html; } public function newsletterSuscriber() { if ( ! isset($_COOKIE['newsletter_suscriber'])) { $path = parse_url(get_option('siteurl'), PHP_URL_PATH); $host = parse_url(get_option('siteurl'), PHP_URL_HOST); $expiration = time() + 3600; setcookie('newsletter_suscriber', 'newsletter_suscriber', $expiration, $path, $host); } } } // Initialize the plugin $initialisation = new Okidoo_Newsletter_Suscriber(); 

Afer это, я попытался поместить add_action в mey файл functions.php в шаблон, а также в файл плагина напрямую.

Любой может сказать мне, можно ли:

  1. Выполните плагин с действием init;
  2. Что я делаю неправильно, если точка № 1 верна?

Спасибо

Solutions Collecting From Web of "add_action в пользовательском плагине"