[经验]dede全站RSS订阅静态输出的办法_DedeCms教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!
给大家分享一下实现DedeCMS Rss全站静态输出的方法,大家可以去尝试一下。
一、在CMS根目录下,新增rss.php文件,文件代码如下:
  1. PHP代码 
  2.      
  3. <?php     
  4. require_once (dirname(__FILE__) . "/include/common.inc.php");     
  5. require_once (DEDEINC."/arc.partview.class.php");     
  6. $pv = new PartView();     
  7. $pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/default/rss.htm");     
  8. header("Content-type:application/xml");     
  9. $pv->Display();     
  10. ?>      
二、在默认模板目录(/templetes/default)中,新增rss.html模板文件,文件代码如下:
  1. XML/HTML代码    
  2. <?xml version="1.0" encoding="{dede:global.cfg_soft_lang /}" ?>       
  3. <rss version="2.0">       
  4. <channel>       
  5. <title>RSS订阅-{dede:global.cfg_webname/}</title>       
  6. <link>{dede:global.cfg_basehost/}</link>       
  7. <description>{dede:global.cfg_description/}</description>       
  8. <language>zh-cn</language>       
  9. <generator>{dede:global.cfg_webname/}</generator>       
  10. <webmaster>{dede:global.cfg_adminemail/}</webmaster>       
  11. {dede:arclist row='100' col='1' titlelen='200' orderby='pubdate'}       
  12. <item>       
  13. <link>/[field:arcurl/]</link>       
  14. <title><![CDATA[[field:title function='html2text(@me)'/]]]></title>       
  15. <author>[field:writer/]</author>       
  16. <category>[field:typename/]</category>       
  17. <pubDate>[field:pubdate function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/]</pubDate>       
  18. <guid>/[field:arcurl/]</guid>       
  19. <description><![CDATA[[field:description function='html2text(@me)'/]]]></description>        
  20. </item>       
  21. {/dede:arclist}     
  22. </channel>     
  23. </rss>   
三、在后台——核心——频道模型——单页文档管理,增加一个单页面,“模板文件名”项中输入第2步中涉及的模板文件rss.htm,而“文件名”中输入未来Rss订阅地址,这里我就直接生成在CMS根目录下了。
 
四、更新一下缓存,并更新刚刚新增的单页面,即可看到全站性的RSS输出,以后很方便的就可以用各种RSS软件去登录Submit rss地址了。
 
因此,用单页发布产品信息会很普遍,可惜的是上面谈及的全站RSS静态输出的方法是无法提取单页的,所以我们还需要对rss.html的模板代码进行修改:
  1. XML/HTML代码 
  2.      
  3. <?xml version="1.0" encoding="{dede:global.cfg_soft_lang /}" ?>       
  4. <rss version="2.0">       
  5. <channel>       
  6. <title>RSS订阅-{dede:global.cfg_webname/}</title>       
  7. <link>{dede:global.cfg_basehost/}</link>       
  8. <description>{dede:global.cfg_description/}</description>       
  9. <language>zh-cn</language>       
  10. <generator>{dede:global.cfg_webname/}</generator>       
  11. <webmaster>{dede:global.cfg_adminemail/}</webmaster>       
  12. {dede:arclist row='100' col='1' titlelen='200' orderby='pubdate'}       
  13. <item>       
  14. <link>http://www.wlxs.com.cn[field:arcurl/]</link>       
  15. <title><![CDATA[[field:title function='html2text(@me)'/]]]></title>       
  16. <author>[field:writer/]</author>       
  17. <category>[field:typename/]</category>       
  18. <pubDate>[field:pubdate function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/]</pubDate>       
  19. <guid>http://www.***.com[field:arcurl/]</guid>       
  20. <description><![CDATA[[field:description function='html2text(@me)'/]]]></description>        
  21. </item>       
  22. {/dede:arclist}     
  23. /********调用单页的代码********/     
  24. {dede:sql sql='Select * from dede_sgpage order by uptime asc limit 48'}       
  25. <item>       
  26. <link>http://www.***.com/[field:filename/]</link>       
  27. <title><![CDATA[[field:title function='html2text(@me)'/]]]></title>       
  28. <author></author>       
  29. <category></category>       
  30. <pubDate>[field:uptime function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/]</pubDate>       
  31. <guid>http://www.***.com/[field:filename/]</guid>       
  32. <description><![CDATA[[field:body function='html2text(@me)'/]]]></description>       
  33. </item>       
  34. {/dede:sql}     
  35. /********调用单页的代码********/     
  36. </channel>       
  37. </rss>   
仅供大家学习使用,希望对你有所帮助!

查看更多 DedeCms教程  织梦模板  织梦DedeCms视频教程  织梦dedecms专题

来源:模板无忧//所属分类:DedeCms教程/更新时间:2020-04-16
相关DedeCms教程