经典帝国CMS生成sitemap实现代码分享
因为对帝国CMS的sitemap插件不太满意,所以写了一个sitemap生成工具,把首页链接、栏目页链接、内容页链接放在sitemap里,然后生成一个XML文件提交给百度站长工具。本文中的代码需要生动地生成。我自己在Linux下用cron写了一个定时任务,每天固定时间生成一次,先这样吧~
代码如下:
lt;?服务器端编程语言(Professional Hypertext Preprocessor的缩写)
/*参考文件*/
要求(# 39;e/class/connect . PHP # 39;);
要求(# 39;e/class/db _ SQL . PHP # 39;);
要求(# 39;e/data/db cache/class . PHP # 39;);lt;/pgt;lt;pgt/*建立数据库链接并实例化类*/
$ link = db _ connect();
$ empire = new MySQL query();lt;/pgt;lt;pgt//header(quot;content -类型:application/XML quot;);
标题(quotcontent -类型:文本/html;charset = ut F-8 quot;);lt;/pgt;lt;pgt$ operation = $ _ GET[# 39;操作# 39;];
$ current _ URL = explode(# 39;/#39;,$ _ SERVER[# 39;PHP _ SELF # 39]);
$ current _ script _ name = end($ current _ URL);lt;/pgt;lt;pgtif($运算放大器;amp$ operation = = quotmakexmlquot)
{
$ XML = generate _ sitemp _ XML();
$ result = save _ XML(# 39;sitemap.xml # 39,$ XML);
如果($结果)
{
回声# 39;生成成功,lt;a href = quotsitemap.xmlquotgt;单击此处查看lt;/AGT;#39;;
}
其他
{
回声# 39;生成失败,lt;a href = quot#39;。$current_script_name#39;quotgt;再来lt;/AGT;!#39;;
}
}
其他
{
回声# 39;欢迎使用微笑鱼网站地图生成工具,请lt;a href = quot#39;。$current_script_name#39;?operation = makexmlquotgt;单击此处生成lt;/AGT;!#39;;
} lt/pgt;lt;pgtlt;/pgt;lt;pgt
//保存到文件
函数save_xml($filename,$text) {
如果(!$filename ||!$text)
返回false
@ chmod($文件名,0777);
if ($fp = fopen($filename,quotwquot)) {
if (@fwrite($fp,$text)) {
fclose($ FP);
返回true
}否则{
fclose($ FP);
返回false
}
}
返回false
}
//生成站点地图XML数据
函数generate_sitemp_xml()
{
global $dbtbpre,$ empire
$ xml = # 39#39;;
$xml。= #39;lt;?xml版本= quot1.0quot编码= quotut F-8 quot;?gt;#39;。PHP _ EOL
$xml。= #39;lt;urlsetgt。#39;。PHP _ EOL
$xml。= generate _ home _ XML();//主页
$xml。= generate _ class _ XML();//列
$ query = quotselect * from {$dbtbpre } ecms _ news order by id desc限制100quot;
$ SQL = $ empire -gt;查询($ query);
while($ r = $ empire -gt;fetch($sql))
{
$ title URL = sys _ ReturnBqTitleLink($ r);
$xml。= #39;lt;urlgt。#39;。PHP _ EOL
$xml。= #39;lt;locgt#39;。$titleurl。#39;lt;/locgt。#39;。PHP _ EOL
$xml。= #39;lt;lastmodgt#39;。strftime(# 39;% Y-% m-% d # 39;,$ r[# 39;新闻时间# 39;]).#39;lt;/lastmodgt;#39;。PHP _ EOL
$xml。= #39;lt;changefreqgt。dailylt/changefreqgt。#39;。PHP _ EOL
$xml。= #39;lt;优先级gt。0.8lt/prioritygt。#39;。PHP _ EOL
$xml。= #39;lt;/urlgt。#39;。PHP _ EOL
}
$xml。= #39;lt;/urlsetgt。#39;。PHP _ EOL
返回$ xml
}
//生成列链接XML数据
函数generate_class_xml()
{
global $dbtbpre,$empire,$ class _ r;
$ xml = # 39#39;;
$ SQL = $ empire -gt;查询(quotSELECT * FROM { $ dbtbpre } enews class其中islast = 1quot);
while($ r = $ empire -gt;fetch($sql))
{
$ infor = $ empire -gt;fetch 1(quot;从{ $ dbtbpre } ecms _ quot中选择新闻时间;。$class_r[$r[classid]][tbname]。quot在哪里
classid = # 39$ r[classid]# 39;按新闻时间DESC限制1quot);
$ class _ URL = sys _ returnbqclass name($ r,9);
$xml。= #39;lt;urlgt。#39;。PHP _ EOL
$xml。= #39;lt;locgt#39;。$class_url。#39;lt;/locgt。#39;。PHP _ EOL
$xml。= #39;lt;lastmodgt#39;。strftime(# 39;% Y-% m-% d # 39;,时间())。#39;lt;/lastmodgt;#39;。PHP _ EOL
$xml。= #39;lt;changefreqgt。dailylt/changefreqgt。#39;。PHP _ EOL
$xml。= #39;lt;优先级gt。0.8lt/prioritygt。#39;。PHP _ EOL
$xml。= #39;lt;/urlgt。#39;。PHP _ EOL
}
返回$ xml
}
//生成列链接XML数据
函数generate_home_xml()
{
$ xml = # 39#39;;
$xml。= #39;lt;urlgt。#39;。PHP _ EOL
$xml。= #39;lt;locgthttps://www . jb51 . net lt;/locgt。#39;。PHP _ EOL
$xml。= #39;lt;lastmodgt#39;。strftime(# 39;% Y-% m-% d # 39;,时间())。#39;lt;/lastmodgt;#39;。PHP _ EOL
$xml。= #39;lt;changefreqgt。dailylt/changefreqgt。#39;。PHP _ EOL
$xml。= #39;lt;优先级gt。0.8lt/prioritygt。#39;。PHP _ EOL
$xml。= #39;lt;/urlgt。#39;。PHP _ EOL
返回$ xmllt;/pgt;lt;pgt} lt/pgt;lt;pgt/*关闭数据库连接并释放该类*/
db _ close();
$ empire = null
?登录后复制
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.qnziyw.cn",如遇到无法解压的请联系管理员!
青柠资源网 » 经典帝国CMS生成sitemap实现代码分享
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍
- 提示下载完但解压或打开不了?
- 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们。
- 找不到素材资源介绍文章里的示例图片?
- 对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单