fetch_feed 函数 是用 RSS 功能调用其它支持 RSS 网站内容的功能(大多数网站都支持),下面教大家如何让 WordPress 调用其它网站最新文章:
1.在网站根目录新建一个名为 cache 的文件夹,并且设置权限为 777,作为 RSS 的缓存文件夹。
2.在 sidebar.php 或者 你想要显示 RSS 调用文章的地方插入以下代码:
<?php require_once (ABSPATH . WPINC . '/class-feed.php'); $feed = new SimplePie(); $feed->set_feed_url(array('http://xiaoyi.vc/feed', 'https://www.xia1ge.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 echosubstr($item->get_description(),0,180);?><!-- 文章内容 --> <?php endforeach; ?> </li> </ul>
附带CSS样式:
.rss ul li { width:209px; white-space:nowrap; overflow:hidden; line-height:23px; }
这样就可以简单实现RSS抓取文章了,但是可能会出现乱码的情况,所以还需要加入识别中文字函数的函数cut_strr
function cut_strr($str,$len) { if (strlen($str) <= $len) return $str; $n = 0; $tempstr = ''; for ($i=0; $i<$len; $i++) { if (ord(substr($str,$n,1)) > 224) { $tempstr .= substr($str,$n,3); $n += 3; $i++; //把一个中文按两个英文的长度计算 } elseif (ord(substr($str,$n,1)) > 192) { $tempstr .= substr($str,$n,2); $n += 2; $i++; //把一个中文按两个英文的长度计算 } else { $tempstr .= substr($str,$n,1); $n ++; } } //此处增加strip_tags(),去掉字串中包含 HTML 及 PHP 的标记,返回字符串形式的值,避免输出值中有分段现象造成各种难看 $tempstr = strip_tags($tempstr); return $tempstr.'...'; }
利用 RSS 功能,还可以实现采集文章, 这里是不推荐的哈。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END



![适用于全部WordPress程序网站的数据库批量替换插件、可无脑一键换域名工具[插件发布]-回忆博客](http://www.aih0.cn/wp-content/uploads/2026/07/ea59d7d0db541c58ce295fe270ed0873.jpeg)








暂无评论内容