首页 > 解决方案 > 如何从 wp_content 外部排队 wordpress 样式

问题描述

通常的入队方式是使用

wp_enqueue_styles('style', get_template_directory_uri() . '/bundle.css', array(), '', true);

bundle.css从主题目录的根目录入队。但是,我的主题目录不wp-content支持将 php 文件与 scss 和 js 捆绑在一起,并且仍然保持 src 和 dist 目录分开。

正常情况下get_template_directory_uri()返回类似/wp-content/themes/...wp_enqueue_styles生成<link href="http://localhost/wp-content/themes/...

但是当使用register_theme_dir从外部加载主题时wp_content<link href="http://localhostC:\projects\...当然,WordPress 无法生成可以从网络服务器提供的链接,因为我的文件夹不在 htdocs 中,但 WordPress 仍然将主机附加到本地文件系统路径with 没有任何意义。

有没有办法告诉 wp_enqueue_styles 使用我逐字传递的路径并且不附加主机?

当从另一台服务器排队风格时

wp_enqueue_styles('style', 'https://cdn.js...', array(), '', true);

它也没有附加我的主机,所以我尝试使用 afile:///但这也不起作用。

请注意,这仅适用于本地开发,因此可以在 htdocs 之外指定资源,当上传到 prod 时,所有内容都以 zip 打包并上传到正常的 wp-content 目录。

标签: wordpressstyles

解决方案


替换get_template_directory_uri()home_url()- 它为您提供根 url,然后您可以手动输入文件的 URL。


推荐阅读