我有一个使用WordPress 3.0的多站点功能设置的小型站点网络。我想创建另一个网站,从不同的其他网站拉某些帖子来显示。这个新的“集线器”网站对用户来说就像是它自己的独立网站(有域名映射),但它的内容来自其他网站的帖子。
如何在WordPress多站点设置中从其他站点获取帖子?我可以根据网站名称查询帖子吗?最终结果需要是来自不同网站的帖子按日期排序的集合。
谢谢你的帮助。
发布于 2012-07-09 07:45:38
我遇到了类似的问题,我想从一个博客中获取帖子,并将其显示在另一个博客上。我想出了以下解决方案,如果需要,可以稍微修改一下以满足您的需求
<?php
global $switched;
switch_to_blog(2); //switched to 2
// Get latest Post
$latest_posts = get_posts('category=-3&numberposts=6&orderby=post_name&order=DSC');
$cnt =0;?>
<ul>
<?php foreach($latest_posts as $post) : setup_postdata($post);?>
<li>
<a href="<?php echo get_page_link($post->ID); ?>" title="<?php echo $post->post_title; ?>"><?php echo short_title('...', 7); ?></a>
</li>
<?php endforeach ; ?>
<?php restore_current_blog(); //switched back to main site ?>
如果你不想简单地使用这个功能,我也会限制输出的字数
$post->post_title;
希望能有所帮助。
发布于 2010-10-09 03:03:06
使用直接数据库调用来设置它并不是很困难。您可以使用$wpdb对象在安装时查询来自任何站点的帖子。有关使用自定义数据库查询的信息,请参阅Displaying Posts Using a Custom Select Query,但请记住,您需要访问想要发布的特定站点表,而不是从$wpdb->post中进行选择。在默认的Wordpress 3安装中,这将是wp_12_posts,其中12是站点id。id可以在wp_blogs表中找到,也可以通过查看管理菜单的Sites部分中的ID列来找到。
https://stackoverflow.com/questions/3884987
复制相似问题