gpt4 book ai didi

javascript - 如何从 WordPress 中的子主题运行外部 js 文件

转载 作者:行者123 更新时间:2023-12-03 11:02:46 32 4
gpt4 key购买 nike

我正在使用 WordPress,并且我的子主题根目录中的外部文件中有一些自定义 js。我希望将此 js 文件的引用写入 html 文档的最末尾,就在结束 body 标记之前。我首先尝试将引用硬编码到 footer.php 中。我验证了 html 源中对外部 js 文件的引用是正确的,但 javascript 没有执行任何操作,并且在 firebug 中也没有抛出任何错误。外部文件仅包含:

jQuery(document).ready(function(){
alert('hello')
});

所以在谷歌搜索这个问题一段时间后,我发现我需要使用

wp_register_script

wp_enqueue_script

我找到了文档 herehere但我对php不是很熟悉...

目前,我添加了:

add_action('wp_enqueue_scripts', 'load_javascript_files');
function load_javascript_files() {
wp_register_script('scripts', get_template_directory_uri() . 'wp-content/themes/maya_child/scripts.js', array('jquery'), true );
wp_enqueue_script('scripts');
}

到我的子主题的functions.php 文件。结果是对我的自定义脚本文件的引用根本没有在源代码中打印出来

我可能错过了一个步骤,还是我搞砸了 php?我需要在 header.php 中添加一些内容吗?或页脚.php?

最佳答案

这可能是导致问题的 JavaScript 路径。 get_template_directory_uri()返回主题的路径而不是站点的路径。另外,当您使用子主题时,此函数仍然返回父主题的 uri - 因此这不是最佳选择。

尝试get_stylesheet_directory_uri() :

add_action('wp_enqueue_scripts', 'load_javascript_files');
function load_javascript_files() {
wp_register_script('scripts', get_stylesheet_directory_uri() . '/scripts.js', array('jquery'), null, true );
wp_enqueue_script('scripts');
}

请注意,这些函数都不会在 uri 上返回尾部斜杠,因此您需要在路径的其余部分之前添加它,例如。 '/scripts.js'

关于javascript - 如何从 WordPress 中的子主题运行外部 js 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28007126/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com