如何在RSS上显示帖子ID?
这是我的代码:
$rss = new DOMDocument();
$rss->load(\'https://www.ciusan.com/feed\');
$feed = array();
foreach ($rss->getElementsByTagName(\'item\') as $node) {
$item = array (
\'title\' => $node->getElementsByTagName(\'title\')->item(0)->nodeValue,
// \'desc\' => $node->getElementsByTagName(\'description\')->item(0)->nodeValue,
\'link\' => $node->getElementsByTagName(\'link\')->item(0)->nodeValue,
\'date\' => $node->getElementsByTagName(\'pubDate\')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$limit = 5;
echo \'<div>\';
echo \'<ul class="soo-latest">\';
for($x=0;$x<$limit;$x++) {
$title = str_replace(\' & \', \' & \', $feed[$x][\'title\']);
$link = $feed[$x][\'link\'];
// $description = $feed[$x][\'desc\'];
$date = date(\'l F d, Y\', strtotime($feed[$x][\'date\']));
echo \'<li>» <a target="_blank" class="soo-info" href="\'.$link.\'">\'.$title.\'</a>\';
echo \'<small class="help">Posted on \'.$date.\'</small></li>\';
// echo \'<p>\'.$description.\'</p>\';
}
echo \'</ul>\';
echo \'</div>\';
这是我的永久链接:
/%category%/%post_id%/%postname%/
我想使用
wp_get_shortlink(get_the_ID());
适用于:
echo \'<li>» <a target="_blank" class="soo-info" href="\'.$link.\'">\'.$title.\'</a>\';
所以显示缩短不长的链接。。。
SO网友:bueltge
您可以通过挂钩将ID作为自定义标记添加到提要中。但在rss/atom标准中,它没有提供有效的标记来存储此内容。所以我认为你应该把guid
标记以获取帖子的ID,如下面的示例所示。
提要中的guid:
<guid isPermaLink="false">https://www.ciusan.com/?p=3566</guid>
拆分ID。
$id = explode( \'=\', $guid );
风险值
$guid
您是否应该在foreach循环中进行增强,以便它存储每个项的每个guid。这个
$id
获取包含所有字符串的数组按字符串拆分
=
, 还有你的帖子id。