我正在尝试设计自己的wordpress
主题,但我在让JavaScript
工作时遇到问题,而我所研究的任何内容似乎都没有答案。如果有人能帮助我,我会非常感激!
我做过的事情:
将我的javascript文件排入functions.php:
function sorenTheme_scripts() {
wp_enqueue_style('style', get_stylesheet_uri());
wp_register_script( 'soren-script', get_template_directory_uri() . '/js/soren-script.js', array( 'jquery', 'jquery-ui-core' ), '1', true );
wp_enqueue_script('soren-script');
}
add_action('wp_enqueue_scripts', 'sorenTheme_scripts');
在名为soren-script.js的{template folder} / js目录中创建一个简单的javaScript文件,该文件目前只包含一个非常简单的警报测试
alert('Hello World');
就是这样。当我尝试使用index.php file
直接将警报放入script tags
时,警报按预期出现,但当我将其移至js文件时,我什么也得不到。我需要添加到.php
或.js
文件中吗?
所以我想让soren-script.js出现会解决问题,但我不知道怎么做,我认为入队会让它自动显示为源,就像它一样我的样式表
答案 0 :(得分:1)
您的模板中可能没有wp_footer()函数。因为在这个钩子中代码将被加载,如果你没有定义钩子,它将不会出现。
<强> $ in_footer 强> (boolean)(可选)通常,脚本放在HTML文档中。如果此参数为true,则脚本将放在结束标记之前。这需要主题在适当的位置使用wp_footer()模板标记。 默认值:false
参考:http://codex.wordpress.org/Function_Reference/wp_enqueue_script
请注意,get_footer()
和wp_footer()
为2 different things:
get_footer()模板标记是locate_template()函数的自定义包装器,用于在模板文件中包含模板部件文件。 get_footer()模板标记是WordPress模板系统的一部分,主要由主题本身使用,用于指定要包含在当前模板中的footer.php或footer- {slug} .php文件。
wp_footer()模板标记是wp_footer动作钩子的自定义包装器,它通过do_action('wp_footer')调用。 wp_footer()模板标记是WordPress Hooks API的一部分,主要由插件使用,用于在网站HTML页脚中注入脚本。
wp_footer挂钩通常位于关闭正文标记的正确位置:
<?php
wp_footer();
?>
</body>
cfr。:http://codex.wordpress.org/Function_Reference/wp_footer
答案 1 :(得分:0)
尝试像这样包含你的脚本:
wp_enqueue_script('scriptname', get_template_directory_uri() . '/js/scriptname.js', array(), '20140520', true);
第二件事。您是否已将警报放入文档中。已经或者什么?
答案 2 :(得分:0)
在你的functions.php中添加以下内容;
add_action('wp_enqueue_scripts', function () {
wp_enqueue_script(
'script name',
get_template_directory_uri() . '/functions/js/script.js',
array('jquery') // any script dependancies. i.e. jquery
);
});
在文件管理器中,将脚本放在functions / js /文件夹中。
确保以下内容打开并关闭您的脚本。
jQuery(document).ready(function($) {
}
这对我有用,应该是让js在wordpress主题上正常工作所需的一切