导航:首页 > 编程语言 > php生成网站地图

php生成网站地图

发布时间:2023-11-16 14:19:25

‘壹’ php怎么生成sitemap.xml

/**
*生成站点地图
*/
classsitemap{
private$sitemapFile=array();
private$oldxml=null;
private$newxml=null;
public$error=null;
publicfunction__construct($sitemapFile){
$this->sitemapFile=$sitemapFile;
if(is_file($this->sitemapFile)){
$data=file_get_contents($this->sitemapFile);
if($data){
$this->oldxml=newSimpleXMLElement($data);
}else{
$this->error='读取站点地图文件失败';
}
}else{
$this->oldxml=$this->createEmptySitemap();
}
$this->newxml=$this->createEmptySitemap();
}
(){
$str='<?xmlversion="1.0"encoding="UTF-8"?>';
$str.='<urlsetxmlns="http://www.sitemaps.org/schemas/sitemap/0.9"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"></urlset>';
returnnewSimpleXMLElement($str);
}
publicfunctionaddChilds($urlArr){
$urlArr=(array)$urlArr;
foreach($urlArras$url){
$priority=0.5;
$lastmod=date('Y-m-d');
$changefreq='weekly';
if(stripos($url,'.html')){
$priority=1;
$changefreq='monthly';
}
if($oldXmlUrl=$this->findOldXmlUrl($url)){
$priority=$oldXmlUrl->priority;
$lastmod=$oldXmlUrl->lastmod;
$changefreq=$oldXmlUrl->changefreq;
}
$rating=$this->newxml->addChild('url');
$rating->addChild('loc',$url);
$rating->addChild('priority',$priority);
$rating->addChild('lastmod',$lastmod);
$rating->addChild('changefreq',$changefreq);
}
}
publicfunctionfindOldXmlUrl($url){
$oldXmlUrl='';
foreach($this->oldxml->urlas$key=>$xmlUrl){
if($xmlUrl->loc==$url){
$oldXmlUrl=$xmlUrl;
unset($this->oldxml->url[$key]);
break;
}
}
return$oldXmlUrl;
}
publicfunctionsave(){
$data=$this->newxml->asXML();
if(file_put_contents($this->sitemapFile,$data)===false){
$this->error='写入站点地图数据失败';
returnfalse;
}
returntrue;
}
}

上面这个是我个人博客生成站点地图用的类。

客户端调用代码如下:

$sitemapFile='Sitemap.xml';
$sitemap=newsitemap($sitemapFile);

if($sitemap->error){
die($sitemap->error);
}

$newUrl=[
'http://www.kiscms.com/content/28.html'
];

$sitemap->addChilds();

if(!$sitemap->save()){
die($sitemap->error);
}

关键的问题是,你如何得到整站的url呢?

我个人博客的解决方法是写了个蜘蛛程序爬出来的。

‘贰’ php生成百度移动Sitemap协议XML格式文件,其中有两个标签不知怎样加进去<mobile:mobile type="mobile"/>

打开爱站SEO工具包,找到网站地图/sitemap,点击进入登录或注册页面,如果所示1

登录之后,点击添加网站,输入网站域名www.meng10000.com,点击保存,如图所示2

点击默认分类下面的网站域名,设置基本信息和抓取更新频率后,点击抓爬,如图所示3和4

接下来等待抓爬完成或者自己手动点击停止,查看,生成XML文件,如图所示5和6

然后,打开文件目录,找到对应sitemap.xml文件和robots.txt文件,将其全部上传到网站服务器根目录下。

6
最后,打开网络站长平台,链接提交,提交sitemap地址,之后就等待网络蜘蛛抓取收录你的网站吧,如图所示。

‘叁’ 怎么用php实现自动生成站点地图的XML文件

需要做的就是新建一个地图模板,模板-增加自定义页面模板。

在浏览器里面输入:域名/sitemap.html,就能够看到网站地图了。

阅读全文

与php生成网站地图相关的资料

热点内容
安卓怎么测量开机电压 浏览:775
程序员素质大全 浏览:952
激战服务器不见了怎么办 浏览:982
安卓如何退回初始系统 浏览:951
用什么手表能代替app 浏览:706
女程序员熬夜体检 浏览:716
解压故事校园恋爱又烦恼 浏览:557
冰箱压缩机放多久能启动 浏览:173
软件算法发明专利 浏览:988
旁氏算法 浏览:767
程序员那么可爱电视剧免费观看极速版 浏览:749
程序员那么可爱陆漓孩子保住了吗 浏览:566
如何获取服务器dns秒解 浏览:665
如何破解大黄蜂的加密文件 浏览:13
新概念英语第三册pdf 浏览:403
分项详细估算法步骤 浏览:438
ipad桌面文件夹放大 浏览:893
我的世界基岩版怎么进国际服务器 浏览:518
福州医院有没有解压舱 浏览:472
带pwm的51单片机 浏览:918