織夢DedeCMS默認的RSS訂閱源是根據欄目分類來生成的,這樣就不能讓用戶訂閱整個網站的RSS,下面織夢技術研究中心就教大家如何給網站做全站RSS輸出:首先,添加一個RSS模板,文件名為:index_rss.htm,將這個RSS模板文件放到/templets/plus/目錄下。文件內容為下面的代碼:
<?xml version="1.0" encoding="{dede:global.cfg_soft_lang /}" ?><rss version="2.0"><channel><title>{dede:global.cfg_webname/}</title><link>{dede:global.cfg_basehost/}</link><description>{dede:global.cfg_description/}</description><language>zh_cn</language><generator>{dede:global.cfg_webname/}</generator><webmaster>{dede:global.cfg_adminemail/}</webmaster>{dede:arclist row='50' orderby='pubdate' titlelen='200'}<item><title><![CDATA[[field:title/]]]></title><link>[field:arcurl/]</link><category>[field:typename/]</category><pubdate>[field:pubdate function='strftime("%a,%d%b%Y%H:%M:%S +0800",@me)'/]</pubdate><description><![CDATA[[field:array runphp='yes']@me = (strpos(@me['litpic'],'defaultpic') ? "": "<a [email=href='%7B@me[%22arcurl%22]%7D']href='{@me["arcurl"]}'[/email] target='_blank'><img [email=src='%7B@me[%22litpic%22]%7D']src='{@me["litpic"]}'[/email] border='0' /><br />");[/field:array][field:description function='html2text(@me)'/] ... ]]></description></item>{/dede:arclist}</channel></rss>
然后在網站根目錄中添加rss.php文件,文件內容為下面的代碼:<?phprequire_once (dirname(__FILE__) . "/include/common.inc.php");require_once DEDEINC."/arc.partview.class.php";$pv = new PartView();$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/plus/index_rss.htm");header("Content-type:application/xml");$pv->Display();?>
最后在首頁index.htm模板的頭部標簽中添加rss屬性,代碼如下:<link rel="alternate" type="application/rss+xml" title="{dede:global.cfg_webname/}" href="/rss.php"/>代碼添加完成后重新生成首頁,然后通過瀏覽器上的RSS源識別按鈕即可識別rss訂閱源了?;蛘咴诰W頁其它地方添加A標簽形式的訂閱鏈接。 默認情況下,最多調用50個最新的文章,它有個好處時,是動態文件,不需要每次生成,只要有新文章,RSS就會自動更新。