插件类中的WP_enQueue_脚本

时间:2012-06-20 作者:AlxVallejo

我正在尝试将jQuery UI排队到类方法下的插件中。到目前为止,我有:

class AV_Slider {

function slider_load_js(){
        wp_register_script(\'jquery-ui-core\', \'http://ajax.googleapis.com/ajax/libs/jqueryui/1.5.3/jquery-ui.min.js\');
        wp_enqueue_script(\'jquery-ui-core\', array(\'jquery\') );
        wp_enqueue_script(\'av_slider_js\', AV_SLIDER_BASE_URL . \'includes/js/av_slider.js\', array( \'jquery\' ));
}


function __construct(){
    $this->hooks();
}
function hooks(){
    add_action(\'wp_enqueue_scripts\', \'slider_load_js\');
}
我在页面上看到这个错误:

警告:call\\u user\\u func\\u array()要求参数1为有效回调,未找到函数“slider\\u load\\u js”或函数名无效

除了创建一个新的简单XML对象之外,我不确定\\uu construct()是如何工作的。我还尝试添加操作add_action(\'wp_enqueue_scripts\', \'slider_load_js\'); 但这也导致了一个错误。

有什么帮助吗?

1 个回复
最合适的回答,由SO网友:Stephen Harris 整理而成

首先,我不知道你为什么要注册jquery-ui-core. WordPress已经注册了jQuery UI脚本(请参阅here). 您应该使用附带的jquery和jquery ui脚本,而不是注册自己的脚本。

至于错误-第二个参数add_action (和apply_filter 就这点而言)是callback. 要将类方法作为回调,需要指定类。在您的情况下,使用$this:

add_action(\'wp_enqueue_scripts\', array($this,\'slider_load_js\'));

结束

相关推荐

如何在WordPress上正确包含jQuery-UI效果

我一直试图在我的wordpress主题中包含jquery ui效果(更具体地说是抖动效果)。到目前为止,我只能包含jQuery脚本,但我真的不知道在哪里放置ui脚本以及如何将它们排队。这是我的密码。这显然行不通: <?php wp_enqueue_script(\"jquery\"); ?> <?php wp_enqueue_script(\"jquery-ui-core\"); ?> <?php wp_head(); ?> <lin