Я уже давно пользуюсь плагином JQuery Vertical Accordion Menu, но когда я обновился до WordPress 4.1
плагин выдает сообщение об ошибке, похожее на скриншот Вот.
Я думаю, что я нашел это dcwp_jquery_accordion.php
так как он не отображает ошибку, когда эти строки закомментированы.
Как правильно использовать add_action?
Спасибо!
С наилучшими пожеланиями,
Маркус
function dc_jqaccordion(){
global $registered_skins;
if(!is_admin()){
// Header styles
// add_action( 'init', array('dc_jqaccordion', 'header') );
// Shortcodes
add_shortcode( 'dcwp-jquery-accordion', 'dcwp_dc_jqaccordion_shortcode' );
}
// add_action( 'wp_footer', array('dc_jqaccordion', 'footer') );
$registered_skins = array();
Проблема в моем случае заключалась в том, что функции должны быть public static function
вместо просто function
Плагин работает сейчас.
Спасибо @mmk
Правильный способ использования add_action()
это так:
add_action('the_action_you_want_to_target','your_function');
function your_function(){
//your code goes here
}
если вы хотите поставить в очередь скрипты, вы можете сделать это с помощью другого add_action()
вот так:
add_action('wp_enqueue_scripts','My_Stylesheets_and_Scripts');
function My_Stylesheets_and_Scripts(){
wp_enqueue_script( 'script-name', get_template_directory_uri() . '/js/example.js', array(), '1.0.0', true );
}
true
part означает, что скрипт будет помещен в нижний колонтитул. false
отображает скрипт в шапке