Javascript 如何在Wordpress中排队并调用第二个JQuery版本

Javascript 如何在Wordpress中排队并调用第二个JQuery版本,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,在这里的第一篇文章中,我非常感谢您对我遇到的JQuery问题给予一些帮助。我有一个Wordpress站点,有非常具体的转盘/滑块要求,可以使用Flexslider2来满足,不幸的是,Flexslider2需要jQuery1.7。我知道我需要在这里使用noconflict,并且已经看过了文档,但是无论涉及到Javascript,我都是一个十足的笨蛋,不知道如何在我的具体案例中使用它。目前,我正在将脚本放入页脚中,因此它导致依赖于更新版本的JQuery的其他内容无法工作。我只是不确定如何以及在哪里调

在这里的第一篇文章中,我非常感谢您对我遇到的JQuery问题给予一些帮助。我有一个Wordpress站点,有非常具体的转盘/滑块要求,可以使用Flexslider2来满足,不幸的是,Flexslider2需要jQuery1.7。我知道我需要在这里使用noconflict,并且已经看过了文档,但是无论涉及到Javascript,我都是一个十足的笨蛋,不知道如何在我的具体案例中使用它。目前,我正在将脚本放入页脚中,因此它导致依赖于更新版本的JQuery的其他内容无法工作。我只是不确定如何以及在哪里调用JQuery 1.7,然后如何修改库本身下的脚本以确保它(而且只有它)使用1.7版本。非常感谢你

    wp_enqueue_script( 'jquery17', 'https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js', array(), null );
图像列表下页面上的代码如下所示(因为我有一个链接的滑块和旋转木马)


最好的方法是手动输出所需的脚本标记&直接在html中启用无冲突模式

您可以通过wp_footer钩子以非常高的优先级来实现,以避免干扰其他插件

add_action( 'wp_footer', 'my_custom_scripts', 500 );
function my_custom_scripts() { ?>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
    <script type="text/javascript">
        $.noConflict();
    </script><?php
}
add_action('wp_footer','my_custom_scripts',500);
函数my_custom_scripts(){?>
$.noConflict();

最好的方法是手动输出所需的脚本标记&直接在html中启用无冲突模式

您可以通过wp_footer钩子以非常高的优先级来实现,以避免干扰其他插件

add_action( 'wp_footer', 'my_custom_scripts', 500 );
function my_custom_scripts() { ?>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
    <script type="text/javascript">
        $.noConflict();
    </script><?php
}
add_action('wp_footer','my_custom_scripts',500);
函数my_custom_scripts(){?>
$.noConflict();

谢谢!我可以看到1.7现在在页脚中被调用,它不会干扰其他依赖于JQuery的东西,但我的滑块/旋转木马也不工作。我需要修改代码来告诉它使用哪个版本的JQuery吗?嗯,可能是因为你的滑块JS在此之后没有加载。棘手的是你不能修改它e sliders JS使用jQuery的第二个副本。也就是说,您可能必须在没有冲突的情况下尝试,并在新的jQuery副本之后强制加载sliders JS。非常感谢Daniel的帮助。我认为更现代的滑块是唯一令人满意的解决方案。我找到了一个非常好的滑块,希望能够说服客户这将做得更好!谢谢!我可以看到1.7现在在页脚中被调用,它不会干扰其他依赖JQuery的东西,但我的滑块/旋转木马也不工作。我需要修改代码来告诉它使用哪个版本的JQuery吗?嗯,可能是因为你的滑块JS在此之后没有加载。tricky部分是你不能修改滑块JS来使用第二个jQuery副本。也就是说,你可能必须在没有冲突的情况下尝试,并在新的jQuery副本后强制加载滑块JS。非常感谢Daniel的帮助。我认为更现代的滑块是唯一令人满意的解决方案。我找到了一个非常好的滑块,希望能够我能够说服客户它会做得更好!基于帖子id,你可以对脚本进行加密,这样可以避免冲突。谢谢!我只需要一个模板使用旧版本,但不幸的是,我需要在每个页面上使用最新版本,所以我想仍然会有冲突?基于帖子id,你可以对脚本进行加密,所以您可以避免冲突。谢谢!我只需要在一个模板上使用旧版本,但不幸的是,我需要在每个页面上使用最新版本,所以我认为仍然会有冲突?
add_action('init', 'my_register_styles');

function my_register_styles() {
    wp_register_style( 'style1', get_template_directpry_uri() . '/style1.css' );
    wp_register_style( 'style2', get_template_directpry_uri() . '/style2.css' );
    wp_register_style( 'style3', get_template_directpry_uri() . '/style3.css' );
}

add_action( 'wp_enqueue_scripts', 'my_enqueue_styles' );

function my_enqueue_styles() {
    if ( is_front_page() ) {
        wp_enqueue_style( 'style3' );
    } elseif ( is_page_template( 'special.php' ) ) {
        wp_enqueue_style( 'style1' );
        wp_enqueue_style( 'style2' );
    } else {
        wp_enqueue_style( 'style1' );
    }
}