我正在尝试设计自己的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');
在{模板文件夹} / js目录中创建一个简单的javaScript文件, 名为soren-script.js, 该文件目前仅包含一个非常简单的警报测试
alert('Hello World');
就是这样。当我尝试直接使用脚本标签将警报放入index.php文件时, 警报按预期方式出现, 但是当我将其移至js文件时, 我什么也没得到。我需要添加到.php或.js文件中吗?
编辑:当我看开发人员控制台时, 源文件包括jquery, 我的css文件等, 但不包括soren-script.js
所以我想让soren-script.js出现可以解决此问题, 但是我不知道该怎么做, 我认为入队会使它像源于样式表一样自动显示为源文件。
#1
你的模板中可能没有wp_footer()函数。由于将在此挂钩中加载代码, 因此如果你未定义挂钩, 它将不会显示。
$ in_footer(布尔值)(可选)通常, 脚本位于HTML文档中。如果此参数为true, 则脚本将放置在结束标记之前。这要求主题在适当的位置具有wp_footer()模板标签。默认值:false
参考:http://codex.wordpress.org/Function_Reference/wp_enqueue_script
请注意, get_footer()和wp_footer()是2种不同的东西:
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钩子通常在关闭body标签之前放置在正确的位置:
<?php
wp_footer();
?>
</body>
编号:http://codex.wordpress.org/Function_Reference/wp_footer
#2
尝试包括以下脚本:
wp_enqueue_script('scriptname', get_template_directory_uri() . '/js/scriptname.js', array(), '20140520', true);
第二件事。你是否已将警报放入document.ready或其他内容中?
#3
在你的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主题上正常工作所需要的全部
评论前必须登录!
注册