WP多站点:从站点Y上的站点X加载内容

时间:2012-09-18 作者:Pierre

我在我的专业网站上运行一个WP多站点网络(http://mydomain.com)。我想使用jQuery Mobile,为移动用户提供不同的网站和web体验,因此我在上创建了另一个网站http://m.mydomain.com.

在主(桌面)WP站点上,我创建了一个“项目”内容类型来对我的专业项目进行排序。在我将创建的移动站点上,我希望能够加载这些项目(从桌面WP db),而不必将所有项目重新创建到移动WP站点。

我已经做过类似的工作:我必须通过主WP站点的子域访问WP内容,使用“需要WP加载”。php的技术,但我想知道WP中是否有一个内置函数可以以更干净的方式实现这一点,因为这两个站点位于同一个网络上。

1 个回复
SO网友:Pontus Abrahamsson

您可以只使用该函数switch_to_blog 在对您的post\\U类型运行WP\\U查询之前;项目;。

将当前博客切换到其他博客。如果需要从其他博客获取帖子或其他信息,请将\\u切换到\\u blog()。

听起来这就是你想要的。因此,假设您的内容位于main\\u站点上。在mobilesite上运行此操作:

// Get current blog_id
global $blog_id;

// Run this code if on mobilesite
// Change from blog_id 2 if another id
if( $blog_id == 2 ) {

    // Switch to the main_site
    switch_to_blog(1);

        // Get from projects and all of the posts
        $args = array(
            \'post_type\'  => \'projects\',
            \'posts_per_page\' => -1
        );

        // The Query
        $the_query = new WP_Query( $args );

        // The Loop
        while ( $the_query->have_posts() ) :
            $the_query->the_post();
            echo \'<li>\' . get_the_title() . \'</li>\';
        endwhile;

        // Restore original Query & Post Data
        wp_reset_query();

    // Switch back to mobilesite
    restore_current_blog();
}

结束

相关推荐

Multisite WPLANG won't save

我有一个多站点的workpress安装(3.3.2版)。我试图保存WPLANG字段,但什么也没发生。我收到确认消息“站点选项已更新”,但字段仍然为空。当我用get\\u locale查询它时,它会得到默认的“en\\u US”。我尝试进入:ja\\U JP\'ja\\u JP\'“ja\\u JP”日语\'ja JP\'“ja JP”提前感谢!