您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程
phpcms的rss问题bug修复
亦瑶2025-05-19phpcms教程已有人查阅
导读phpcms中的rss功能有一些小问题,一是生成的链接过长,二是不能生成全站rss,只能是栏目级别注:在自己直接输出的代码中发现如果标题内容含有特殊字符
phpcms中的rss功能有一些小问题,一是生成的链接过长,二是不能生成全站rss,只能是栏目级别
注:在自己直接输出的代码中发现如果标题内容含有特殊字符(必如:"&"符号)会出现生成的rss不能解析错误
1,如果只是解决链接太长,大部分订阅网站不能正常订阅问题,使用url规则进行转换应该就就可以了(没有测试过)
2,
下面是简单的输出代码来完成,如果有人使用rss来重写,应该更好
这是列出所有分类的rss的方法,
注:在自己直接输出的代码中发现如果标题内容含有特殊字符(必如:"&"符号)会出现生成的rss不能解析错误
1,如果只是解决链接太长,大部分订阅网站不能正常订阅问题,使用url规则进行转换应该就就可以了(没有测试过)
2,
<?php
include"db_config.php";
header("Content-type:text/xml;charset=gbk");
$rss="<?xml version=\"1.0\" encoding=\"gbk\"?>\r\n";
$rss.="<rss version=\"2.0\" xmlns:atom=\"http:// .w3.org/2005/Atom\" >\r\n";
$rss.="<channel>\r\n";
$rss.="<title>xxxx社会经济研究所</title>\r\n";
$rss.="<link>http:// .zhuanxing.cn/</link>\r\n";
$rss.="<description><![CDATA[xxxx社会经济研究所全站文章订阅 ]]></description>\r\n";
$rss.="<language>GBK</language>\r\n";
$rss.="<webMaster>http://xxx.cn</webMaster> \r\n";
$rss.="<copyright>new sitexxxx</copyright> \r\n";
$rss.="<pubDate>".date("Y-m-d H:i:s")."</pubDate> \r\n\r\n";
echo$rss;
$db_sql="select id,title,url,description,thumb,aut,inputtime from `v9_news` where islink=0 order by id desc limit 50 ";
$db_result=mysqli_query($db_conn,$db_sql) or die("Err in query:".mysqli_error());
if (mysqli_num_rows($db_result)>0)
{
while($r=mysqli_fetch_assoc($db_result))
{
echo"\r\n<item>\r\n";
echo"<title>".htmlspecialchars($r['title'])."</title>\r\n";
echo"<link>"."<![CDATA[".htmlspecialchars($r['url'])."]]>"."</link>\r\n";
echo"<description>\r\n";
if($r['thumb']!=""){
echo"<![CDATA[<img src=".$r['thumb']." border='0' /><br />".htmlspecialchars($r['description'])."]]>";
}else{
echo"<![CDATA[".htmlspecialchars($r['description'])."]]>";
}
echo"</description>\r\n";
echo"<pubDate>".date('Y-m-d',$r['inputtime'])."</pubDate>\r\n";
echo"<guid><![CDATA[".$r['url']."]]></guid>\r\n";
echo"<author>".$r['aut']."</author>\r\n";
echo"</item>\r\n";
}
}
else
{
echo"no recoder";
}
mysqli_free_result($db_result);//释放结果集
mysqli_close($db_conn);//释放连接
$foot="\r\n\r\n</channel></rss>";
echo$foot;
?>
其他栏目页可以和上面的页面合并成一个文件
<?php
include"db_config.php";
header("Content-type:text/xml;charset=gbk");
$cate_catname;
$cate_image;
$cate_url;
$cate_description;
$ccatid;
$db_sqlx="select * from `v9_category` where catid=".intval($_GET["rssid"]);
$db_x=mysqli_query($db_conn,$db_sqlx) or die ("err in query 1:");
if ($db_catid=mysqli_fetch_assoc($db_x))
{
$ccatid=$db_catid['arrchildid'];
$cate_catname=$db_catid['catname'];
$cate_image=$db_catid['image'];
$cate_url=$db_catid['url'];
$cate_description=$db_catid['description'];
}
mysqli_free_result($db_x);//释放结果集
$rss="<?xml version=\"1.0\" encoding=\"gbk\"?>\r\n";
$rss.="<rss version=\"2.0\" xmlns:atom=\"http:// .w3.org/2005/Atom\" >\r\n";
$rss.="<channel>\r\n";
$rss.="<title>".$cate_catname."</title>";
$rss.=" <link>http://xxx.cn/".$cate_url."</link>";
$rss.=" <description>".$cate_description."</description>";
$rss.="<image><url><![CDATA[".$cate_image." ]]></url></image>";
$rss.=" <language>GBK</language>";
$rss.="<webMaster>http://xxxxxx.cn</webMaster> ";
$rss.=" <copyright>xxxxx</copyright> ";
$rss.=" <pubDate>".date("Y-m-d H:i:s")."</pubDate> ";
echo$rss;
$db_sql="select id,title,url,description,thumb,aut,inputtime from `v9_news` where catid in (".$ccatid.") and islink=0 order by id desc limit 30 ";
$db_result=mysqli_query($db_conn,$db_sql) or die("Err in query 2:".$db_sql.mysqli_error());
if (mysqli_num_rows($db_result)>0)
{
while($r=mysqli_fetch_assoc($db_result))
{
echo"\r\n<item>\r\n";
echo"<title>".htmlspecialchars($r['title'])."</title>\r\n";
echo"<link>"."<![CDATA[".htmlspecialchars($r['url'])."]]>"."</link>\r\n";
echo"<description>\r\n";
if($r['thumb']!=""){
echo"<![CDATA[<img src=".$r['thumb']." border='0' /><br />".htmlspecialchars($r['description'])."]]>";
}else{
echo"<![CDATA[".htmlspecialchars($r['description'])."]]>";
}
echo"</description>\r\n";
echo"<pubDate>".date('Y-m-d',$r['inputtime'])."</pubDate>\r\n";
echo"<guid><![CDATA[".$r['url']."]]></guid>\r\n";
echo"<author>".$r['aut']."</author>\r\n";
echo"</item>\r\n";
}
}
else
{
echo"no recoder";
}
mysqli_free_result($db_result);//释放结果集
mysqli_close($db_conn);//释放连接
$foot="</channel></rss>";
echo$foot;
?>
如果要同时解决两个问题,我的方法是为此需要重新写这个页面下面是简单的输出代码来完成,如果有人使用rss来重写,应该更好
这是列出所有分类的rss的方法,
{template "content","header_min"}
<div class="main">
<div >
<h6 class="title-2 f14 text-c">Rss订阅列表</h6>
<div class="content blue">
{pc:content action="category" catid="0" siteid="$this->siteid" order="listorder ASC"}
{loop $data $r}
<div class="color on blue_button"><a href="{APP_PATH}index.php?m=content&c=rss&rssid={$r[catid]}">{$r[catname]}<img src="{IMG_PATH}icon/rss.gif"></a></div>
<ul style="display:block">
{loop subcat($r[catid],0,0,$this->siteid) $v}
<li class="blue_button"><a href="{APP_PATH}index.php?m=content&c=rss&rssid={$v[catid]}">{$v[catname]} <img src="{IMG_PATH}icon/rss.gif"></a></li>
{/loop}
</ul>
{/loop}
{/pc}
</div>
</div>
</div>
<div class="clear"></div>
</div>
{template "content","footer"}
本文标签:
很赞哦! ()
上一篇:phpcmsv9模板制作方法教程
相关教程
图文教程
phpcms是什么,phpcms是做什么的
PHPCMS(PHP Content Manage System)是一款由文章、下载、图片、分类信息、影视、商城、采集、财务等20多个功能模块组成的强大、易用、可扩展的网站管理软件。
phpcmsv9仿站的方法
Phpcms内容管理系统以简单、实用、开源而闻名,是国内最领先的网站内容管理系统,同时也是一个开源的PHP开发框架,是用户最多的php类CMS系统。
Shpinx在PHPCMS里的使用及配置方法
现在可以用较新版的Sphinx版本我使用rpm方式: 下载RHEL/CentOS 6.x x86_64 RPM(centos6的64位)安装前请确保您安装了这些软件包:
phpcms源代码分析
第一次分支时其实就是整个base.php文件的执行base.php这个文件了,它是PHPCMS框架入口文件,他引入了很多的函数库,如:
相关源码
-
(自适应)变压器电子元器件电器配件pbootcms网站模板源码为电子元器件企业打造的响应式网站模板,基于PbootCMS内核开发,助力企业快速构建专业级线上展示平台。支持页面独立设置标题、关键词和描述,内置SEO友好结构。PHP程序确保运行安全稳定,有助于提升搜索引擎收录效果。查看源码 -
(自适应HTML5)响应式智能设备人工智能机器pbootcms源码免费下载这款基于PbootCMS开发的网站模板为人工智能和智能设备行业设计,采用现代化科技风格,突出产品的智能特性和技术创新。模板架构合理,功能完善,能够有效展示各类智能产品的核心功能和解决方案。查看源码 -
(自适应响应式)门窗定制门业带视频功能pbootcms模板下载本模板采用PbootCMS内核开发,为门窗制造、定制安装企业打造,通过可视化后台管理系统快速构建品牌官网。自适应设计确保在手机、平板、电脑等设备上均能获得优质浏览体验查看源码 -
(自适应响应式)高端简繁双语HTML5金融资本咨询单页pbootcms模板采用响应式设计确保在各类手机端设备很好的呈现。该模板专注于金融咨询、资本管理等领域企业形象展示,通过结构化布局突出行业专业度与可信度,后台数据同步管理简化内容维护流程。查看源码 -
(自适应响应式)高端家用办公家具家居桌椅pbootcms模板下载为办公家具企业设计的响应式网站模板,涵盖产品展示、案例呈现、企业介绍等核心模块。通过可视化后台可快速发布实木桌椅、系统家具、办公屏风等产品信息,帮助客户直观了解材质参数与空间搭配方案。查看源码 -
宽屏自适应搬家家政快递物流公司网站模板该宽屏大气的响应式网站模板专为搬家公司、家政服务及物流快递企业设计,基于PbootCMS内核开发,通过自适应布局确保手机、PC等多终端体验一致,助力企业高效构建专业在线服务平台。查看源码
| 分享笔记 (共有 篇笔记) |
