wp_enqueue_script()没有加载多个脚本

时间:2013-06-18 14:15:54

标签: wordpress

我正在尝试通过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的函数。

谢谢,

中号

2 个答案:

答案 0 :(得分: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');

答案 1 :(得分:1)

wordpress论坛的某个人提供了这个。这两个函数组合在一起,当添加动作时,使用'template_redirect'$标签而不是'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' );