wordpress站点地址和wordpress地址不一致时出现的问题以及解决方案

wordpress&woocommerce开发记录WordPress技术博客wp应用技术

wordpress的安装地址和站点地址

wordpress在安装时,会根据访问触发安装程序的域名自动确认站点地址和wordpress地址,在我们安装好了wordpress之后,可以进入后台-设置-常规中看到这两个数据:

wordpress站点地址和wordpress地址不一致时出现的问题以及解决方案

如上图所示:

  • wordpress地址对应数据库的数据名称是  siteurl 代表着wordpress的安装地址,也就是我们wordpress后台的地址
  • 站点地址对应的数据库名称是 home  代表着前端网页访问的地址。

这两个数据值在绝大多数情况下是保持一致的,但也有一些特殊的情况,两个数据所填写的域名是不一致的,一旦这两个值出现不一致的情况,将会带来一些问题。

我们在帮助客户检测时发现了一些问题,并进行了处理,一下是当wordpress的 站点地址和wp地址不一致时会出现的问题以及解决方法。

 

使用古藤堡区块编辑器时出现“发布失败,您可能已经掉线”,以及古藤堡所依赖的REST API无法连接

古藤堡编辑器是依赖wordpress的 REST API 进行编辑和提交数据的,当我们的wordpress网站配置 站点地址和wp地址不一致的时候,REST API会出现无法访问的情况。

这是由于REST API的链接是连接的站点地址,wp-json的指向会出现2条,这样会引起冲突,从而引发 :“发布失败,您可能已经掉线”的提示

wordpress站点地址和wordpress地址不一致时出现的问题以及解决方案

这样让我们无法保存编辑好的文章和页面。

此外, REST API无法访问还会带来样板和可重用模块的读取失败,样板功能是当前古藤堡编辑器所提供的最强力的排版方式,而可重用区块则是编辑公共公用区域所以来的重要功能。

这些功能缺失,会导致完全无法使用古藤堡编辑器进行编辑的操作。

解决方法

在你的主题function.php文件中加入如下代码即可完全解决此问题,这段代码会判断 wordpress的站点地址和wp地址不一致时,将REST API 的指向强制到wordpress地址上。

add_filter('rest_url', 'themepark_home_url_as_api_url');
function themepark_home_url_as_api_url($url) {
$url = str_replace(home_url(),site_url() , $url);
return $url;
}

 

当wordpress站点地址和wp地址不一致的时候,xml生成文件指向错误

当你的wordpress网站配置站点地址和wp地址不一致的时候,你所安装的一些xml站点地图生成的xml文件指向会发生错误

访问xml文件时会出现:载入样式表单出错: 发生未知错误 (805303f4)  这样的提示

这个问题目前看起来最简单的解决方法如下

如,你的站点地址为 www.baidu.com  你的wp地址为 home.baidu.com

插件生成的xml文件路径为:www.baidu.com/sitemap.xml

此时访问此路径会提示:载入样式表单出错: 发生未知错误 (805303f4) 

可以将xml的访问路径改为 wp地址 这样就可以正常访问:home.baidu.com/sitemap.xml

提交给百度、谷歌、bing等搜索引擎xml站点地图的时候,也只需要改一下这个地址即可,robots.txt文件指向的xml站点地图路径也可以更改一下就行了

这样无需其他操作,替换掉链接提交就行。

 

 

下一篇:

文章评论

您好!请登录

取消回复
    展开更多