php生成sitemap的思路,PHP生成SiteMap文件代码的方法

这篇博客详细介绍了如何使用PHP生成SiteMap文件的代码,包括创建XML文档,设置节点和属性,以及保存文件的过程。示例代码展示了如何创建sitemap索引和具体的网站地图条目,对于网站SEO优化和爬虫抓取非常有用。
摘要由CSDN通过智能技术生成

PHP生成SiteMap文件代码的方法

$main_sitemap = new DOMDocument('1.0', 'utf-8');  // 声明版本和编码

$main_sitemap -> formatOutput = true;  //格式XML输出

$sitemapindex    = $main_sitemap -> createElement('sitemapindex');

$xmlns    = $main_sitemap -> createAttribute('xmlns');

$xmlnsvalue  = $main_sitemap -> createTextNode("http://www.sitemaps.org/schemas/sitemap/0.9");

$sitemap    = $main_sitemap -> createElement('sitemap');    //创建一个标签

$loc    = $main_sitemap -> createElement('loc');    //创建一个标签

$id    = $main_sitemap -> createAttribute('id');      //创建一个属性

$newsid  = $main_sitemap -> createTextNode($page);        //设置属性内容

$newsco = $main_sitemap -> createTextNode("http://youdomain/map/sitemap_".$page.".xml");      //设置标签内容

$xmlns -> appendChild($xmlnsvalue);

$sitemapindex        -> appendChild($xmlns);

$id        -> appendChild($newsid);    //继承属性

$loc    -> appendChild($id);  //继承属性内容

$loc    -> appendChild($newsco);    //继承标签内容

$sitemap    -> appendChild($loc);        //继承子类

$sitemapindex    -> appendChild($sitemap);

$main_sitemap   -> appendChild($sitemapindex);

$main_sitemap    -> save("../sitemap.xml");

}else{

$main_sitemap = new DOMDocument('1.0', 'utf-8');  // 声明版本和编码

$main_sitemap->preserveWhiteSpace = false;

$main_sitemap -> formatOutput = true;  //格式XML输出

$main_sitemap->load("../sitemap.xml");

$notes = $main_sitemap->documentElement;

$sitemap    = $main_sitemap -> createElement('sitemap');    //创建一个标签

$loc    = $main_sitemap -> createElement('loc');    //创建一个标签

$id    = $main_sitemap -> createAttribute('id');      //创建一个属性

$newsid  = $main_sitemap -> createTextNode($page);        //设置属性内容

$newsco = $main_sitemap -> createTextNode("http://youdomain/map/sitemap_".$page.".xml");      //设置标签内容

$id        -> appendChild($newsid);    //继承属性

$loc    -> appendChild($id);  //继承属性内容

$loc    -> appendChild($newsco);    //继承标签内容

$sitemap    -> appendChild($loc);        //继承子类

$notes    -> appendChild($sitemap);

$main_sitemap    -> appendChild($notes);

$main_sitemap    -> save("../sitemap.xml");

}

//

if($page

echo "sitemap_".$page."生成完成,正进行下一个生成";

$page++;

echo "";

}else{

echo "生成完成!";

exit();

}

function page($page,$total,$pagesize=10,$pagelen=7){

$url=$_SERVER["REQUEST_URI"];

$parse_url=parse_url($url);

$url_path=$parse_url[path];

$url_query=$parse_url[query];

$page=$_GET[page];

if($url_query){

$url_query=ereg_replace("(^|&)page=$page","",$url_query);

$url=str_replace($parse_url["query"],$url_query,$url);

if($url_query) $url.="&page"; else $url.="page";

}else {

$url.="?page";

}

$phpfile=$url;

$pagecode = '';//定义变量,存放分页生成的HTML

$page = intval($page);//避免非数字页码

$total = intval($total);//保证总记录数值类型正确

if(!$total) return array();//总记录数为零返回空数组

$pages = ceil($total/$pagesize);//计算总分页

//处理页码合法性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值