我知道这个问题和答案是一年多前的,但我只是想补充一些额外的信息,希望它可能对这个问题的未来访问者有用。
最近,在使用Roots Basick建立无头WordPress CMS时,我遇到了同样的问题,并用与您的解决方案略有不同的版本解决了它。我应用了1点和2点完全相同,但3点略有不同。我没有添加新行,而是更改了WP\\u CONTENT\\u URL常量的声明,如下所示:
Config::define(\'WP_CONTENT_URL\', Config::get(\'WP_HOME\') . Config::get(\'CONTENT_DIR\'));
对此:
Config::define(\'WP_CONTENT_URL\', Config::get(\'WP_HOME_ADMIN\') . Config::get(\'CONTENT_DIR\'));
这解决了后端插件路径和活动主题的后端资产路径。
但还有最后一个错误:WordPress REST API端点在后端无法访问,因为它是用get_home_url()
函数返回附加到前端URL的REST API端点,而不是get_site_url()
.
正在寻找修复REST API URL的解决方案,我遇到了以下问题post answer 如果文章作者提供了此过滤功能,您可以将其粘贴到活动主题的功能中。用于将REST API URL的基础替换为后端URL的基础的php文件:
/*
* Fix Roots Bedrock WP REST API base endpoint
*/
add_filter( \'rest_url\', function( $url ) {
$pattern = \'/(\\S+)(\\/wp\\/?)$/\';
$siteURL = preg_replace( $pattern, \'${1}\', site_url() );
$url = str_replace( home_url(), $siteURL, $url );
return $url;
} );
该函数将前端URL替换为后端URL,并删除
/wp
根基石WordPress后端URL的一部分。