4

我正在尝试通过 wp_enqueue_script() 加载两个脚本。我做了功能,但只有第一个加载而不是第二个。这是代码:

//Load my own jQuery
function fix_noconflict() {
wp_deregister_script( 'jquery' );
wp_register_script( 'jquery' , 'http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js' );}

add_action( 'wp_enqueue_scripts' , 'fix_noconflict' );

//This two functions follow the same
function mauricio_bootstrap_script_jquery() {

//Includes bootstrap jQuery
wp_register_script( 'custom-script', get_template_directory_uri().'/mauricio_bootstrap/js/bootstrap.js', array( 'jquery' ) );

//This enqueus  the script

wp_enqueue_script( 'custom-script' );
}   
// Adds the new bootstrap function to the wp_enqueue_scripts
 add_action( 'wp_enqueue_scripts', 'mauricio_bootstrap_script_jquery' );

function mauricio_bootstrap_script_carousel() {

wp_register_script( 'myscript', get_template_directory_uri().'/mauricio_bootstrap/js/bootstrap-carousel.js', array( 'jquery' ) );


wp_enqueue_script( 'myscript' );
}

add_action( 'wp_enqueue_script', 'mauricio_bootstrap_script_carousel' );

只是为了记录,我的标题中有 wp_head() 。正如我所说,它加载了包含 bootstrap.js 的第一个函数。

谢谢,

4

2 回答 2

9

你为什么不试着把你所有的函数都放在一个主函数中,像这样?

function wpEnqueueScripts(){
    // Adds the new bootstrap function to the wp_enqueue_scripts
    wp_register_script('custom-script', get_template_directory_uri() . '/mauricio_bootstrap/js/bootstrap.js', array('jquery'));
    wp_enqueue_script('custom-script');

    // Adds the new bootstrap function to the wp_enqueue_scripts
    wp_register_script('myscript', get_template_directory_uri() . '/mauricio_bootstrap/js/bootstrap-carousel.js', array('jquery'));
    wp_enqueue_script('myscript');
}    

add_action('wp_enqueue_scripts', 'wpEnqueueScripts');
于 2013-06-18T19:14:06.230 回答
2

wordpress 论坛上有人提供了这个。这两个函数被组合在一起,当添加动作时,使用'template_redirect' $tag 而不是'wp_enqueue_script'

function mauricio_bootstrap_scripts() {
wp_register_script( 'custom-script', get_template_directory_uri().'/mauricio_bootstrap/js/bootstrap.js', array( 'jquery' ) );
wp_enqueue_script( 'custom-script' );

wp_register_script( 'myscript', get_template_directory_uri().'/mauricio_bootstrap/js/bootstrap-carousel.js', array( 'jquery' ) );
wp_enqueue_script( 'myscript' );
}
add_action( 'template_redirect', 'mauricio_bootstrap_scriptsl' );
于 2013-06-18T19:02:47.370 回答