我一直在寻找一段时间,但我还没有真正看到有人谈论这个或找到解决方案。至少除了一些技巧可以从functions.php中提供帮助
对于工作中的 WordPress 安装,我必须将安装移动到它自己的文件夹中。我在这里使用了指南:https ://wordpress.org/support/article/giving-wordpress-its-own-directory/#method-ii-with-url-change
一切正常,文件夹结构符合预期:
- /
|-- Wordpress
|-- wp-content
|-- themes
|-- WebsiteTheme
所以那里不用担心。目前,functions.php 在 wp-config.php 中有以下两行
define( 'WP_HOME', 'https://dev.website.nl/' );
define( 'WP_SITEURL', 'https://dev.website.nl/wordpress' );
一切都按照 WordPress 官方网站上的指南进行。但这就是事情变得奇怪的地方。当我尝试将这样的脚本排入队列时
$path = '/wp-content/themes/website/js/app.js';
wp_register_script('someName-'.$entry, $path, [], false, true);
wp_enqueue_script('someName-'.$entry);
路径最终设置为
/wordpress/wp-content/themes/website/js/app.js
这当然行不通。看起来路径是用 SITEURL 而不是 HOME url 预先固定的。
目前,如果基于我给脚本的名称的条件语句为真,我正在使用一个挂钩到script_loader_tag和 str_replace 路径中的“/ wordpress”部分的过滤器。但是当我只是按照 WordPress 指南进行设置时,我认为这不是问题。知道我是否在这里遗漏了什么?
谢谢