WP_enQueue_脚本不起作用

时间:2013-07-05 作者:noway

我正在根据roots 主题我创建了一个front-page.php 并添加了以下内容。我测试页面是否已加载,因为我看到了“我已加载”文本。但是,不会加载脚本。我的设置有什么问题?

<?php
function dd_register_scripts() {
    wp_register_script(
        \'something\',
        get_template_directory_uri() . \'/assets/js/something.min.js\', array(\'jquery\'), null, false
    );
}


function dd_enqueue_scripts() { 
    wp_enqueue_script(\'something\'); 
}

add_action(\'init\', \'dd_register_scripts\');
add_action(\'wp_enqueue_scripts\', \'dd_enqueue_scripts\');
?>
<div id="asd">I am loaded</div>

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

根据您的描述,您;创建了front-page.phpadded the following“参考资料”;而且该文件中有标记,您挂接得太晚了。

你们两个都应该registering 并在上排队wp_enqueue_scripts 但这不是问题所在。问题是,当你尝试钩子的时候,钩子已经开火了。init 将在加载模板之前激发wp_enqueue_scripts 将在该代码运行之前的页面标题中激发(或者您的标记非常破碎)。你不能hook 在它开火后被钩上。

您需要将此代码添加到主题的functions.php 使用适当的template tags 有条件地加载脚本。

相关:

https://wordpress.stackexchange.com/a/105135/21376

结束

相关推荐