如何将其他博客的列表,以及来自这些博客的最新帖子添加到我的网站的单个页面?

时间:2020-07-15 作者:legatrix

我想要一个像这个页面左下角那样的自我更新列表

https://aclerkofoxford.blogspot.com/p/old-english-wisdom.html

只添加到我网站的一个页面。我不在乎它是如何完成的,尽管我更喜欢可以自己添加的自定义代码,而不是使用插件。我在这个网站上搜索了一些提示,但大多数结果似乎都是关于列出自己的博客,而不是其他博客。非常感谢。

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

有一个函数叫做fetch_feed, 还有一个代码示例,用于为该页面上的评论中提供的单个站点编写自定义代码。如果您愿意编写更多的自定义代码,那么很容易将其更改为从多个提要中提取,并将其限制为每个站点的1或2篇最新帖子。

Note 这种方法适用于低流量网站,但对于繁忙的网站,你会在网站的每次页面加载中点击这些RSS提要,所以你可能需要考虑实现缓存。

下面是获取和呈现单个RSS提要的代码,您应该能够从中进行操作。请参阅fetch_feed documentationthis pages with more descrtiption of the fields in RSS 有关更多详细信息

 
<?php // Get RSS Feed(s)
include_once( ABSPATH . WPINC . \'/feed.php\' );
 
// Get a SimplePie feed object from the specified feed source.
$rss = fetch_feed( \'http://example.com/rss/feed/goes/here\' );
 
$maxitems = 0;
 
if ( ! is_wp_error( $rss ) ) : // Checks that the object is created correctly
 
    // Figure out how many total items there are, but limit it to 5. 
    $maxitems = $rss->get_item_quantity( 5 ); 
 
    // Build an array of all the items, starting with element 0 (first element).
    $rss_items = $rss->get_items( 0, $maxitems );
 
endif;
?>
 
<ul>
    <?php if ( $maxitems == 0 ) : ?>
        <li><?php _e( \'No items\', \'wpdocs_textdomain\' ); ?></li>
    <?php else : ?>
        <?php // Loop through each feed item and display each item as a hyperlink. ?>
        <?php foreach ( $rss_items as $item ) : ?>
            <li>
                <a href="<?php echo esc_url( $item->get_permalink() ); ?>"
                    title="<?php printf( __( \'Posted %s\', \'wpdocs_textdomain\' ), $item->get_date(\'j F Y | g:i a\') ); ?>">
                    <?php echo esc_html( $item->get_title() ); ?>
                </a>
            </li>
        <?php endforeach; ?>
    <?php endif; ?>
</ul>

相关推荐

How to configure my blog page

我已经学习WordPress大约两周了,我陷入了“FrontPage.php”、“index.php”和“FrontPage.php”的争论中。这是我的问题。。如何使/博客使用主页。php模板?目前,它被视为404页并触发404。php模板。在查找了几次之后,我发现我可以手动创建一个只有标题的博客页面,但我不知道这有多可行。请帮忙。