调用其他站点文章显示在自己的WordPress上

从wordpress2.8之后增加了一个fetch_feed函数,它能获取外部RSS Feed,从而显示其它网站的文章。如果你有多个网站,通过fetch_feed函数你就可以相互调用并显示多个网站的文章链接,还可以利用fetch_feed函数来采集他站的文章,当然这个最好是经站长允许。

在添加以下代码之前,应首先在网站根目录新建一个名为 cache  权限为777 的文件夹,作为缓存文件夹.然后在模板(一般是侧边栏sidebar.php模板)适当位置加入以下代码:

<?php

require_once (ABSPATH . WPINC . '/class-feed.php');

$feed = new SimplePie();

$feed->set_feed_url(array('http://yangkun.net/feed', 'http://bbs.k159.com/feed')); //可以添加多个站点feed地址

$feed->enable_order_by_date(false);

$feed->set_cache_location($_SERVER['DOCUMENT_ROOT'] . '/cache');//缓存文件夹

$feed->init();

$feed->handle_content_type();

?>

<ul>

<?php foreach ($feed->get_items(0,10) as $item)://10是文章篇数 ?>

<li>

<a href="<?php echo $item->get_permalink()?>" rel="bookmark" title="阅读> <?php echo $item->get_title()?>"><?php echo $item->get_title()?></a><!-- 文章标题 -->

<br/><?php echo substr($item->get_description(),0,180);?><!-- 文章内容 -->

<?php endforeach; ?>

</li>

</ul>

简单说明下:

  1. 将feed_url替换。
  2. SimplePie默认的缓存文件夹是根目录的cache文件夹,所以第一步是在网站的根目录下创建一个 777 权限的名为 cache 的文件夹。
  3. 黑色的数字“7”为你展示的列表的文章数目。

以上方法只是调用文章的标题,如果想把文章也调用出来,可以在上面的基础下加入以下代码:

$item->get_description()

加入文章内容后可以这样写:

打赏

发表回复