dede自带rss生成后只显示文章的简介,这样让一些RSS阅读器无法展示整篇文章。 现在,很多人喜欢使用平板电脑等终端,离线下载好网站的文章来阅读,譬如ipad上面的zaker、蘑菇新闻,添加好rss地址就能直接阅读全文。
DedeCMS自带rss功能无法输出全文,这里告诉大家修改方法:
一、找到include/arc.rssview.class.php这个文件(感谢DedeCMS论坛版主:溪梦缘曦 提供这个文件的修改方法),找到下面这段代码:
if($ctag->GetName()=='array')
{
//传递整个数组,在runphp模式中有特殊作用
$dtp2->Assign($k,$row);
}
在这段代码和下面那个else之间插入:
else if($ctag->GetName()=='body')
{
$rbd = $this->dsql->GetOne("Select body from `dede_addonarticle` where aid=".$row['id']);
$dtp2->Assign($k,$rbd['body']);
}
二、修改/templets/plus/rss.htm,修改后为如下代码:
<?xml version="1.0" encoding="{dede:global.cfg_soft_lang /}" ?>
<rss version="2.0">
<channel>
<title>{dede:field name='typename'/}</title>
<link>http://www.5loveb.com{dede:field name='typelink'/}</link>
<description>{dede:field name='title' function='html2text(@me)'/}</description>
<language>zh-cn</language>
{dede:rssitem}
<item>
<title><![CDATA[[field:title function='html2text(@me)'/]]]></title>
<link>http://www.5loveb.com[field:arcurl/]</link>
<hasDetail>Y</hasDetail>
<description><![CDATA[[field:body/]]]></description>
<pubDate>[field:pubdate function='strftime("%a, %d %b %Y %H:%M:%S ",@me)'/]GMT</pubDate>
<subImagePath>http://www.5loveb.com[field:litpic/]</subImagePath>
<category>[field:typename/]</category>
<author>[field:writer/]</author>
<comments>[field:source/]</comments>
<newsType>8</newsType>
</item>
{/dede:rssitem}
</channel>
</rss>
注意:修改之前一定要先备份相关文件,以防出错!