软件下载 | 资讯教程 | 最近更新 | 下载排行 | 一键转帖 | 发布投稿
您的位置:最火下载站 > 建站程序 > CMS教程 > 织梦DeDeCMS之RSS订阅全站动静态的实现方案

织梦DeDeCMS之RSS订阅全站动静态的实现方案

dedecms RSS自带的RSS订阅对于站们门来说是个鸡肋,食之无味,弃之可惜,如今出在有RSS订阅功能是必须的,那怎么办呢,我今天给大家提出一个dedecms RSS订阅的全站静态输出解决方案。

具体方案如下,你一步步完成即可

首先,你新建一个rss.php文件,把下面的代码拷贝到其中:

复制代码代码如下:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.veryhuo.com]
<?php
require_once (dirname(__FILE__) . "/include/common.inc.php");
require_once DEDEINC."/arc.partview.class.php";
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/default/rss.htm");
header("Content-type:application/xml");
$pv->Display();
?>

保存该文件到站点根目录下。

然后,再制作一个rss.htm模板输出文件,把下面的代码拷贝到其中:

复制代码代码如下:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.veryhuo.com]
<?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>
copyright dedecms
<language>zh-cn</language>
<generator>{dede:global.cfg_webname/}</generator>
<webmaster>{dede:global.cfg_adminemail/}</webmaster>
{dede:arclist row='200' col='1' titlelen='200' orderby='pubdate'}
<item>
<link>http://www.domain.com[field:arcurl/]</link>
<title><![CDATA[[field:title function='html2text(@me)'/]]]></title>
<author>[field:writer/]</author>
<category>[field:typename/]</category>
<pubDate>[field:pubdate function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/]</pubDate>
<guid>http://www.domain.com[field:arcurl/]</guid>
<description><![CDATA[[field:description function='html2text(@me)'/] ...
<b>文章分类</b>:[field:typename/]
<a href="http://www.domain.com[field:arcurl/]" target="_blank">阅读全文</a> | <a href="http://www.domain.com/plus/recommend.php?aid=[field:id/]" target="_blank">邮件推荐</a> | <a href="http://www.domain.com[field:arcurl/]" target="_blank">评论回复</a>]]></description>
烈火网dedecms教程
</item>
{/dede:arclist}
</channel>
</rss>

如果你自己的站点使用时,请把网址替换为你的网址即可。保存该文件与index.htm主页模板相同的目录下,登陆管理后台,清理一下缓存,更新下html就有了
———————————————
以上是动态输入,要想变为静态输出的话还要按下面说的做
————————————–
第一步:打开 频道模型 下的 单页文档管理

点击 增加一个页面

织梦DeDeCMS之RSS订阅全站动静态的实现方案

按照上图去建个这样的单页面文件就行了,但是名字不能用“全站RSS静输出” 最好使用英文名字,自已可以随便起的,点一下保存其它的不要管它

最后更新一下缓存,最好在全站更新一下就行了.

DedeCMS建设企业网站,产品页面往往都会直接生成在根目录,而不会生成在栏目目录内,这样操作不仅可以使URL长度变短,而且可以实现所有页面都位于根目录下的扁平化结构,因此,用单页发布产品信息会很普遍;上面谈及的全站性RSS输出的方法是无法提取单页的,所以还需要对rss.html 的模板代码进行修改:
XML/HTML代码:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.veryhuo.com]
<?xml version="1.0" encoding="{dede:global.cfg_soft_lang /}" ?>
<rss version="2.0">
<channel>
<title>RSS订阅-{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='100' col='1' titlelen='200' orderby='pubdate'}
<item>
<link>http://www.domainl.com[field:arcurl/]</link>
<title><![CDATA[[field:title function='html2text(@me)'/]]]></title>
<author>[field:writer/]</author>
<category>[field:typename/]</category>
<pubDate>[field:pubdate function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/]</pubDate>
<guid>http://www.domainl.com[field:arcurl/]</guid>
<description><![CDATA[[field:description function='html2text(@me)'/]]]></description>
</item>
{/dede:arclist}
/********调用单页的代码********/
{dede:sql sql='Select * from dede_sgpage order by uptime asc limit 48'}
<item>
<link>http://www.domainl.com/[field:filename/]</link>
<title><![CDATA[[field:title function='html2text(@me)'/]]]></title>
<author></author>
<category></category>
<pubDate>[field:uptime function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/]</pubDate>
<guid>http://www.domainl.com/[field:filename/]</guid>
<description><![CDATA[[field:body function='html2text(@me)'/]]]></description>
</item>
{/dede:sql}
/********调用单页的代码********/
</channel>
</rss>

调用方式:调用后台建立的全部48个单页,并按照发布时间增序排列。

扩展说明:DedeCMS单页文档所在的数据表dede_sgpage(不修改表前缀)包括以下字段:
说明

1. aid 文档号
2. title 文档标题
3. ismake 静态页面生成

4. filename 单页文档的文件名
5. keywords 单页文档的关键字
6. template 单页文档所用的模板
7. likeid 文档分类
8. description 单页文档的描述
9. uptime 文档文档生成或修改的时间
10. body 文档文档内容

利用上述标签,就可以修改模板里的标签代码,以调用不同的数据。

这个方法是调用单页面的通用方法,因为sql方式调用是万能的,比如:你可以在首页调用所有的单页面,或者只调用一个或某几个单页面,只需简单修改下代码即可,比如:
XML/HTML代码

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.veryhuo.com]
{dede:sql sql='Select * from dede_sgpage where aid=1'}
<div>
<ul>
<h5><a href="/[field:filename /]" title="[field:keywords /]">[field:title /]</a></h5>
<p>[field:content/]</p>
</ul>
</div>
{/dede:sql}
    相关阅读
    栏目导航
    推荐软件