包括来自不同博客多个wp-blog-header.php

时间:2019-07-15 作者:delueg

我想包括多个wp博客标题。php如下所示。

$config = array(
    array(
        "path" => "/path/to/blog/1/"
    ),
    array(
        "path" => "/path/to/blog/2/"
    )
);


foreach($config as $site){
    include($site[\'path\']."wp-blog-header.php");
    echo get_site_url().\' \'.$site[\'path\'].\'<br>\';
}
我得到了两次第一个site\\u url的回音。所以我相信wordpress没有连接到第二个博客。

有没有办法重置连接和包含的所有内容?

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

这是行不通的,你不能包括wp-blog-header.php 从不同安装多次。

在您包含第一个博客标题之后,所有的WP函数现在都存在于全局名称空间、所有数据库详细信息集、加载的插件和主题等中。为了重置内容,您将需要一个全新的请求,这一点无法实现。

如果您的目标是从多个实例收集数据,那么有更好的解决方案:

多站点安装,允许switch_to_blog() 为此,调用REST API(这可以通过JS或甚至是用不同语言编写的不同程序来完成)

  • WP CLI命令,但同时加载多个WP安装的代码不是一个解决方案,也永远不会起作用

  • 相关推荐

    如何“修复”wp-blog-header.php错误消息?

    我最近更新了一个站点,并收到以下错误消息:致命错误:调用/home/atlmp/public\\u html/wp blog标头中未定义的函数wp()。php在线14我检查了文件,似乎没有任何问题,所以我不知道出了什么问题?<?php /** * Loads the WordPress environment and template. * * @package WordPress */ if ( !isset($wp_did_hea