我在为我的一个主题创建的子主题中加载一些 javascript 时遇到问题。
基本上我这样做:
get_stylesheet_directory() . '/path/to/javascript.js'
这是您应该做的,但是,根据文档,我得到:
mysite.com/dev/home/path/to/wordpress/path/to/theme/path/to/js.js
这导致它找不到所需的文件。因为家是网站的根。
关于我能做些什么来解决这个问题的任何想法?
我在为我的一个主题创建的子主题中加载一些 javascript 时遇到问题。
基本上我这样做:
get_stylesheet_directory() . '/path/to/javascript.js'
这是您应该做的,但是,根据文档,我得到:
mysite.com/dev/home/path/to/wordpress/path/to/theme/path/to/js.js
这导致它找不到所需的文件。因为家是网站的根。
关于我能做些什么来解决这个问题的任何想法?
get_stylesheet_directory() 返回一个服务器路径。我很确定你想要:
get_bloginfo('stylesheet_directory');
这将返回与您的 Wordpress 安装相关的样式表目录的 URL,以便您可以加载外部资产,例如驻留在主题中的 Javascript 文件。
我认为这可以解决问题:
<script type="text/javascript" src="<?php echo get_stylesheet_directory_uri();?>/path/to/javascript.js"></script>
最好以 WordPress 的方式将脚本和样式排入队列。
https://developer.wordpress.org/reference/functions/wp_enqueue_script/ https://developer.wordpress.org/reference/functions/wp_enqueue_style/
把这个放进去functions.php
add_action( 'wp_enqueue_scripts', 'enqueue' );
function enqueue() {
wp_enqueue_style( 'style', get_stylesheet_uri() );
wp_enqueue_style( 'theme-style', get_stylesheet_directory_uri().'/css/theme.css' );
wp_enqueue_script( 'theme-scripts', get_stylesheet_directory_uri().'/js/theme.js' );
}