如何在您的网站上显示WordPress RSS提要?
你好,我有一个网站和一个博客,我想在我的网站上显示我的自托管wordpress博客如何在您的网站上显示WordPress RSS提要?,wordpress,rss,Wordpress,Rss,你好,我有一个网站和一个博客,我想在我的网站上显示我的自托管wordpress博客 我只想在我的网站上显示3个帖子 我想在每次重新加载我的网站时自动检查任何新帖子,以便只显示最近的三篇 我想显示我的wordpress博客文章的完整标题,但要显示具体的描述字母 此外,描述应以一个单词结尾,而不是以“…”结尾的非词典单词 如何做到这一点,我听说可以通过RSS做到。 有人能帮我吗?要做到这一点,你需要阅读博客的RSS,从RSS中你需要阅读标题和描述,在阅读整个描述和标题后,你需要将描述修剪到你想要的字
有人能帮我吗?要做到这一点,你需要阅读博客的RSS,从RSS中你需要阅读标题和描述,在阅读整个描述和标题后,你需要将描述修剪到你想要的字母数。之后,您需要检查描述的最后一个单词是否已完成,如果未完成,则需要删除最后一个单词,并放置“…” 首先,我们将制作一个脚本来修剪描述,并在最后添加“…”:-
<?php
global $text, $maxchar, $end;
function substrwords($text, $maxchar, $end='...') {
if (strlen($text) > $maxchar || $text == '') {
$words = preg_split('/\s/', $text);
$output = '';
$i = 0;
while (1) {
$length = strlen($output)+strlen($words[$i]);
if ($length > $maxchar) {
break;
}
else {
$output .= " " . $words[$i];
++$i;
}
}
$output .= $end;
}
else {
$output = $text;
}
return $output;
}
现在,我们将创建一个数组并在其中存储值。我只选了3个,因为你已经问路了。您可以将其更改为任何内容(要显示的帖子数量,将其放入循环中)
for($i=0;$iitem($i)->getElementsByTagName('title')->item(0)->childNodes->item(0)->nodeValue;
$item_link[$i]=$x->item($i)->getElementsByTagName('link')->item(0)->childNodes->item(0)->nodeValue;
$item_description[$i]=$x->item($i)->getElementsByTagName('description')->item(0)->childNodes->item(0)->nodeValue;
}
?>
现在,重复所有这些值,链接是用户将单击的值,他将被带到您的博客:-
最近发表的第一篇文章:
<a href="<?php echo $item_link[0]; ?>"><?php echo $item_title[0]; ?></a>
<?php echo substrwords($item_description[0],70); ?>
<a href="<?php echo $item_link[1]; ?>"><?php echo $item_title[1]; ?></a>
<?php echo substrwords($item_description[1],70); ?>
<a href="<?php echo $item_link[2]; ?>"><?php echo $item_title[2]; ?></a>
<?php echo substrwords($item_description[2],70); ?>
最近的第二个职位:
<a href="<?php echo $item_link[0]; ?>"><?php echo $item_title[0]; ?></a>
<?php echo substrwords($item_description[0],70); ?>
<a href="<?php echo $item_link[1]; ?>"><?php echo $item_title[1]; ?></a>
<?php echo substrwords($item_description[1],70); ?>
<a href="<?php echo $item_link[2]; ?>"><?php echo $item_title[2]; ?></a>
<?php echo substrwords($item_description[2],70); ?>
最近的第三个职位:
<a href="<?php echo $item_link[0]; ?>"><?php echo $item_title[0]; ?></a>
<?php echo substrwords($item_description[0],70); ?>
<a href="<?php echo $item_link[1]; ?>"><?php echo $item_title[1]; ?></a>
<?php echo substrwords($item_description[1],70); ?>
<a href="<?php echo $item_link[2]; ?>"><?php echo $item_title[2]; ?></a>
<?php echo substrwords($item_description[2],70); ?>
希望这能解决你的问题。顺便提一下,这个问题很好。为什么不使用Wordpress REST API来检索帖子呢- API URL为:$site/posts/ 其中$site是wordpress博客的站点id 或者干脆用这个插件- 有关使用PHP显示RSS源的原始文档 Django Anonymous的
substrwords
函数用于修剪描述,并在描述末尾插入…
,前提是它传递了$maxchar
值
完整代码: blog.php
另外,这段代码是即插即用的。我使用了这段代码,但我得到了以下错误:“PHP致命错误:在非对象上调用成员函数getElementsByTagName()”。问题行是for循环的第一行:$item_title[$I]=$x->item($I)->getElementsByTagName('title')->item(0)->childNodes->item(0)->nodeValue;