正如标题所说,我有一个包含18个站点的多站点设置,并希望将所有站点的RSS提要合并到根站点的提要中。其他提要可能仍然存在,这不是问题。此外,我希望在管理中(可能在页面/帖子编辑中)有一种方法可以从提要中排除某些帖子。
除了包含所有专业小部件和核心功能覆盖的自定义插件之外,我们还使用了大量自定义的主题。我在函数中使用此代码。php将所有内容类型拉入RSS:
function custom_post_feeds($qv){
if (isset($qv[\'feed\']))
$qv[\'post_type\'] = get_post_types();
return $qv;
}
add_filter(\'request\', \'custom_post_feeds\');
有什么想法吗?
最合适的回答,由SO网友:Boone Gorges 整理而成
归根结底,您需要将所有帖子内容放在一个地方,以便能够将其形成一个提要。(在18个不同的post表之间高效查询或多或少是不可能的。)我的转到方法是使用站点范围的标签插件https://wordpress.org/extend/plugins/wordpress-mu-sitewide-tags/, 它允许你指定一个“标签”博客,在那里你的网络上的每一篇文章的副本都将被保存。
你可以将你的主站点设置为“标签”博客,但这意味着你必须装配一些东西,以防止复制的内容出现在你的主提要之外。(例如guid上的过滤器,SWT插件使用该过滤器指向原始内容。)或者,您可以为此建立一个单独的“存储”博客,然后将您的RSS链接指向它(或switch_to_blog()
在主站点的上下文中)。