在页脚上加载javascript时出错(wordpress)

时间:2015-02-06 09:48:11

标签: javascript jquery wordpress footer

我正在尝试优化我公司的网站,现在我试图让wordpress在页脚上加载所有javascript而不是网页顶部,以加快网站加载速度。 我将此代码添加到function.php文件中:

// super easy way to move javascript to footer
remove_action('wp_head', 'wp_print_scripts');
remove_action('wp_head', 'wp_print_head_scripts', 9);
remove_action('wp_head', 'wp_enqueue_scripts', 1);
add_action('wp_footer', 'wp_print_scripts', 5);
add_action('wp_footer', 'wp_enqueue_scripts', 5);
add_action('wp_footer', 'wp_print_head_scripts', 5);    

问题在于我使用了内置javascript的滑块插件,并且使用此代码消失了。

有谁知道如何从页脚上的wordpress页面加载所有的javascript和jquery并且滑块没有消失?

网址网址为www.contidosdixitais.com

非常感谢

1 个答案:

答案 0 :(得分:0)

也许以下代码可以解决这个问题:

// The callback function for the action hook bellow
function any_script_in_footer()
{
    // Call the list with all the registered scripts
    global $wp_scripts;

    if ( isset ( $wp_scripts->registered ) && ! empty ( $wp_scripts->registered ) && is_array( $wp_scripts->registered ) ) {
        foreach ( $wp_scripts->registered as $idx => $script ) {
            if ( isset( $wp_scripts->registered[ $idx ]->extra ) && is_array( $wp_scripts->registered[ $idx ]->extra ) ) {

                // Set any of the scripts to belong in the footer group
                $wp_scripts->registered[ $idx ]->extra[ 'group' ] = 1;
            }
        }
    }
}

// Call the callback function with the `wp_print_scripts` hook at the very end 
// of the callbacks cue
add_action('wp_print_scripts', 'any_script_in_footer', 1000);