我在为一个主题创建的儿童主题中加载一些JavaScript时遇到问题。
本质上, 我这样做:
get_stylesheet_directory() . '/path/to/javascript.js'
这是你应该做的, 但是, 根据文档, 我得到:
mysite.com/dev/home/path/to/wordpress/path/to/theme/path/to/js.js
这导致它找不到所需的文件。因为首页是网站的根源。
关于如何解决此问题的任何想法?
#1get_stylesheet_directory()返回服务器路径。我很确定你想要:
get_bloginfo('stylesheet_directory');
这将返回与Wordpress安装相关的样式表目录的URL, 以便你可以加载外部资源(例如驻留在主题中的Javascript文件)。
#2我认为这可以解决问题:
<
script type="text/javascript" src="http://www.srcmini.com/<
?php echo get_stylesheet_directory_uri();
?>
/path/to/javascript.js">
<
/script>
#3最好以WordPress方式排队脚本和样式。
https://developer.wordpress.org/reference/functions/wp_enqueue_script/ https://developer.wordpress.org/reference/functions/wp_enqueue_style/
【get_stylesheet_directory无法正常工作】把它放在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' );
}
推荐阅读
- 在functions.php中获取受保护帖子的密码
- get_post_meta和add_post_meta在wordpress中不起作用
- 在产品类别上获取wp_Query的类别名称/子类别,以根据类别显示产品列表
- 在博客页面上获取最新帖子
- 获取要在[playlist]短代码中使用的上传音频文件的ID的函数
- Docker - 修改docker 镜像地址加快下载速度
- Paloalto防火墙GlobalProtect设置及更改默认443端口
- Centos7.6 PostgreSQL 源码编译安装
- Docker - 重新启动关闭的容器