Wordpress排队脚本


Wordpress enqueuing scripts in post

这是一个奇怪的问题,但我真的尝试了几个选项,似乎没有一个工作。我有一个插件,是一些帖子的幻灯片,它在主页(索引)上工作得很好。它使用jquery 1.4.2和一个javascript文件。这个想法是,当我进入一个帖子,javascript文件没有加载,导入(使用chrome的webdev检查源,我可以看到插件的style.css,但不是javascript文件)。

我尝试了几个选项,显然wordpress使用的jquery有点太旧了,我需要1.4.2。

我尝试注册1.4.2 jquery(我将参考jq),然后排队的脚本文件取决于新的jq,在插件的php文件,也排队的style.css。我还试着在functions.php中包含下一个代码,仍然不工作:

add_action('wp_footer', 'load_slideshow_scripts');
function load_slideshow_scripts() {
    wp_register_script('slideshow-jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js', array(), '1.4.2', false);
    wp_enqueue_script('slideshow-js', plugins_url('contest-slideshow/script.js'), array('slideshow-jquery'), '1.0', false);
    wp_enqueue_style('slideshow-css', plugins_url('contest-slideshow/styles.css'));
}

我还尝试在我钩到init的函数中排队js文件,仍然没有成功。我还尝试简单地将这些文件与主题在functions.php中默认加载的其他脚本一起排队。

真正的问题是,javascript文件没有加载,幻灯片不工作,而在单一的帖子,否则它的工作

如果这确实是一个jQuery相关的问题,您应该先注销它。试试这个:

function modify_jquery() {
    if (!is_admin()) {
        // comment out the next two lines to load the local copy of jQuery
        wp_deregister_script('jquery');
        wp_register_script('jquery', '//code.jquery.com/jquery-1.11.0.min.js', false, '1.11.0');
        wp_enqueue_script('jquery');
    }
}
add_action('init', 'modify_jquery');

这段代码必须在主题的functions.php中。我用了最后一个1。如果你需要/喜欢另一个jQuery版本,可以编辑它。

祝你好运!