帝国cms通过自定义页面功能生成sitemap.xml网站地图

帝国cms自身并没有sitemap功能,我们可以借助外部插件来实现,例如这个:

帝国cms网站sitemap地图插件动态版

但它有个缺陷,地图为.php后缀,这个在用途上可能有些限制,我们可以通过伪静态来实现伪装地址后缀,或者也可以通过自定义页面的方式来实现真正的静态sitemap.xml地图。

栏目 - 自定义页面 - 增加自定义页面

文件名为:../../sitemap.xml

其他名称随意填写

页面内容中填写以下代码

折叠PHP 代码
  1. <?=’<?xml version=”1.0″ encoding=”UTF-8″?>’?>  
  2.   
  3. <urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″>  
  4. <url>  
  5. <loc>[!--news.url--]</loc>  
  6. <priority>1.000</priority>  
  7. </url>  
  8. [e:loop={"select * from [!db.pre!]enewsclass order by myorder”,0,24,0}] 
  9. <? 
  10. if($bqr['classurl']==”) 
  11. { 
  12. $sccurl=$public_r['newsurl'].$bqr['classpath'].”/”; 
  13. } 
  14. else 
  15. { 
  16. $sccurl=$bqr['classurl'].”/”; 
  17. } 
  18. ?> 
  19. <url> 
  20. <loc><?=$sccurl?></loc> 
  21. <priority>0.6000</priority> 
  22. </url> 
  23. [/e:loop] 
  24. [e:loop={"select * from [!db.pre!]enewszt order by ztid”,0,24,0}]  
  25. <?  
  26. if($bqr['zturl']==”)  
  27. {  
  28. $sccurl=$public_r['newsurl'].$bqr['ztpath'].”/”;  
  29. }  
  30. else  
  31. {  
  32. $sccurl=$bqr['zturl'].”/”;  
  33. }  
  34. ?>  
  35. <url>  
  36. <loc><?=$sccurl?></loc>  
  37. <priority>0.6000</priority>  
  38. </url>  
  39. [/e:loop]  
  40. [e:loop={"select * from [!db.pre!]ecms_news order by newstime”,0,24,0}]  
  41. <url>  
  42. <loc><?=$bqsr[titleurl]?></loc>  
  43. <priority>0.5000</priority>  
  44. </url>  
  45. [/e:loop]  
  46. </urlset>  

这样地图就会生成在帝国cms网站根目录了,在模板内调用这个地址即可。

cms大学,为帝国cms用户提供动力
Copyright © 2016 CmsDX.com All Rights Reserved.