我爱自学

 找回密码
 会员注册

QQ登录

只需一步,快速开始

PHP如何原样输出XML样式的Sitemap数据

制作独立的Sitemap文件时,可以利用PHP从数据库中快速提取数据。本文我爱自学小编,分享通过PHP在Html网页中按XML Sitemap样式输出数据。
网站运营过程中,将网站的资源以Sitemap的形式提交给搜索引擎是非常必要的。本文分享通过php代码获取Discuz系统中未加入Sitemap的链接,然后在HTML原样输出XML样式的Sitemap结构数据。

效果如下图所示:

PHP如何原样输出XML样式的Sitemap数据

PHP如何原样输出XML样式的Sitemap数据


实现方法:
  1. header("Content-Type: text/html; charset=utf-8");
  2.         //引用discuz配置文件
  3.         require('./config/config_global.php');
  4.         require('./source/class/class_core.php');
  5.         $discuz = & discuz_core::instance();//以下代码为创建及初始化对象
  6.         $discuz->cachelist = $cachelist;
  7.         $discuz->init();//以上是调用discuz公共执行类等核心代码
  8.         global $_G;
  9.         $query =DB::query("SELECT tid FROM ".DB::table('forum_thread')." where displayorder >= 0 and tid >= 876");
  10.         //开始输出
  11.         if(empty($query))
  12.         {
  13.                 echo "没有新链接";
  14.         }
  15.         else
  16.         {      
  17.                 while($row = DB::fetch($query)) {
  18.                    echo htmlentities('<url>',ENT_QUOTES,"UTF-8");
  19.                    echo "<br/>";
  20.                    echo htmlentities('<loc><![CDATA[https://www.5izixue.com/thread-596-1-1.html]]></loc>',ENT_QUOTES,"UTF-8");
  21.                    echo "<br/>";
  22.                    echo htmlentities('<lastmod>2022-08-16</lastmod>',ENT_QUOTES,"UTF-8");
  23.                    echo "<br/>";
  24.                    echo htmlentities('<changefreq>weekly</changefreq>',ENT_QUOTES,"UTF-8");
  25.                    echo "<br/>";
  26.                    echo htmlentities('</url>',ENT_QUOTES,"UTF-8");
  27.                    echo "<br/>";
  28.                 }
  29.         }
复制代码
$query =DB::query("SELECT tid FROM ".DB::table('forum_thread')." where displayorder >= 0 and tid >= 876");

displayorder >=0,代表帖子时审核通过的,不是删除了的垃圾帖子。

tid >=876是需要生成Sitemap的起始帖子,根据自身需求修改。

echo htmlentities('<loc><![CDATA[https://www.5izixue.com/thread-596-1-1.html]]></loc>',ENT_QUOTES,"UTF-8");

htmlentities是一个PHP中字符串与HTML之间的相互转换的函数,可以将包含URL链接的字符串内容原样输出到html页面中。

点击阅读更多内容!
如果您觉得文章内容帮助到了您,不妨点点感兴趣的广告。感谢您的支持!

微信扫一扫打赏

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

手机版|小黑屋|我爱自学 ( 蜀ICP备19015358号-3 )

GMT+8, 2024-4-19 16:03 , Processed in 0.102089 second(s), 57 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

本站大部分教程是网站原创教程,一部分教程为我爱自学(http://www.5izixue.com)编辑收集整理。

如果您需要转载我爱自学网站教程,请注明“资料来源:我爱自学(5izixue)”字样并注明本站网址。

编辑收集整理的教程版权归原作者所有,本站只提供网友交流学习使用,请勿用于商业用途,如果该文章有任何侵犯您权益的地方,请联系我们(569705694@qq.com),我们将在第一时间进行处理!谢谢您的支持!

快速回复 返回顶部 返回列表