Enqueue js script to footer

时间:2015-11-10 作者:Jake.JS

我需要跑步wp_enqueue 在填充DOM后的javascript文件上,因为我需要以div为目标。

EDIT

我正在尝试添加以下三个脚本:

wp_enqueue_script(\'react_js\', \'/scripts/react.min.js\' );
wp_enqueue_script(\'startReact_js\', \'/scripts/test.js\', array(\'react_js\'), \'\', true);
wp_enqueue_script(\'app_js\', \'/scripts//App.js\', array(\'startReact_js\'), \'\', true);
第一个脚本将加载到react源代码中,第二个脚本将在页面上创建一个div,以供大多数父react组件呈现,最后一个脚本将把大多数父react组件加载到所述div中。

我需要在运行最后一个脚本之前加载页面,b/c React需要一个DOM元素来呈现,但我不知道如何在页脚中加载脚本。

我可以成功地将脚本添加到标题。我读到有一个$in\\u footer参数。每次我尝试使用$in\\u footer参数将javascript添加到页脚时,它都会从DOM中完全消失。有什么想法吗?

@Blaine我尝试将排队脚本添加到我的函数中。php,但我得到了死亡的白色屏幕。

function addScriptsForEducatePage(){
    if(is_page(5274)){
        wp_enqueue_script(\'react_js\', \'/scripts/react.min.js\' );
        wp_enqueue_script(\'startReact_js\', \'/scripts/pages/test.js\', array(\'react_js\'), \'\', true);
        wp_enqueue_script(\'app_js\', \'/scripts/pages/build/App.js\', array(\'startReact_js\'), \'\', true );
    }
    return;
}
add_action(\'wp_enqueue_scripts\', \'addScriptsForEducatePage\')
有什么想法吗?

2 个回复
SO网友:Blaine

你看过吗wp_enqueue_script 在WordPress codex中?您很可能需要将此添加到functions.php 在主题的目录中。

还有,您在哪里排队startapp_js 依赖关系?

function prefix_enqueue_scripts() {
    wp_enqueue_script( \'startapp-js\', get_template_directory_uri() . \'/scripts/Startapp.js\', array(), \'\', true ); 
    wp_enqueue_script( \'app-js\', get_template_directory_uri() . \'/scripts/App.js\', array( \'startapp-js\' ), \'\', true );
}
add_action( \'wp_enqueue_scripts\', \'prefix_enqueue_scripts\' );

SO网友:Jake.JS

我明白了!footer参数无效,因为我没有<?php wp_footer(); ?> 在页面底部。我们用的是页脚<?php get_footer(); ?> 这显然起到了不同的作用。我从下面的帖子中得到了答案Can't enqueue scripts in the footer?.

我能够将排队脚本保存在原始php页面中,因此无需将其放入函数中。php,尽管我相信它会起作用。

非常感谢所有帮助过我的人!