<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. PHP生成SiteMap文件代碼的方法

    時間:2025-10-21 23:03:56 php語言

    PHP生成SiteMap文件代碼的方法

      分享一例php生成sitemap地圖文件的代碼,用于生成google sitemap地圖,有需要的朋友參考學習下。

      例子:

      復制代碼 代碼示例:

      <?php

      /**

      * 生成sitemap文件

      * 平常在用的一段代碼,分享給大家

      * edit: www.jbxue.com

      */

      require_once('conn.php');

      $doc = new DOMDocument('1.0', 'utf-8');  /pic/p>

      $doc -> formatOutput = true;  /pic/p>

      $sql="select mid from dede_member_company";

      $query=mysql_query($sql);

      $count=mysql_num_rows($query);

      $pg=intval($count/3000);

      if($count%3000)

      $pg++;

      $page=isset($_GET['page'])?$_GET['page']:1;

      $getpageinfo=page($page,$count,3000);

      $sql="SELECT `mid`,`uptime`,`html_path` FROM `dede_member_company` order by `mid`  $getpageinfo[sqllimit]";

      $query=mysql_query($sql);

      $urlset    = $doc -> createElement('urlset');

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

      $xmlnsvalue  = $doc -> createTextNode("/pic/schemas/sitemap/0.9");

      $xmlnsxsi    = $doc -> createAttribute('xmlns:xsi');

      $xmlnsxsivalue  = $doc -> createTextNode("/pic/2001/XMLSchema-instance");

      $schemaLocation    = $doc -> createAttribute('xsi:schemaLocation');

      $schemaLocationvalue  = $doc -> createTextNode("/pic/schemas/sitemap/0.9 /pic/schemas/sitemap/0.9/sitemap.xsd");

      $xmlns -> appendChild($xmlnsvalue);

      $xmlnsxsi -> appendChild($xmlnsxsivalue);

      $schemaLocation -> appendChild($schemaLocationvalue);

      $urlset       -> appendChild($xmlns);

      $urlset       -> appendChild($schemaLocation);

      $urlset       -> appendChild($xmlnsxsi);

      while($row=mysql_fetch_array($query)){

      $url    = $doc -> createElement('url');    /pic/p>

      $loc    = $doc -> createElement('loc');    /pic/p>

      $id    = $doc -> createAttribute('id');      /pic/p>

      $newsid  = $doc -> createTextNode($row[mid]);        /pic/p>

      $newsco = $doc -> createTextNode($row[html_path]);      /pic/p>

      $lastmod    = $doc -> createElement('lastmod');

      $modtime  = $doc -> createTextNode(date('c',$row[uptime]));

      $changefreq    = $doc -> createElement('changefreq');

      $freqtype  = $doc -> createTextNode('daily');

      $priority   = $doc -> createElement('priority');

      $prival  = $doc -> createTextNode('0.5');

      $id        -> appendChild($newsid);    /pic/p>

      $loc    -> appendChild($id);  /pic/p>

      $loc    -> appendChild($newsco);    /pic/pic/p>

      $lastmod ->appendChild($modtime);

      $changefreq ->appendChild($freqtype);

      $priority ->appendChild($prival);

      $url    -> appendChild($loc);

      $url    -> appendChild($lastmod);

      $url    -> appendChild($changefreq);

      $url    -> appendChild($priority);

      $urlset    -> appendChild($url);

      }

      $doc    -> appendChild($urlset);

      $doc    -> save("../map/sitemap_".$page.".xml");

      /pic/p>

      if($page=="1"){

      $main_sitemap = new DOMDocument('1.0', 'utf-8');  /pic/p>

      $main_sitemap -> formatOutput = true;  /pic/p>

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

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

      $xmlnsvalue  = $main_sitemap -> createTextNode("/pic/schemas/sitemap/0.9");

      $sitemap    = $main_sitemap -> createElement('sitemap');    /pic/p>

      $loc    = $main_sitemap -> createElement('loc');    /pic/p>

      $id    = $main_sitemap -> createAttribute('id');      /pic/p>

      $newsid  = $main_sitemap -> createTextNode($page);        /pic/p>

      $newsco = $main_sitemap -> createTextNode("/pic/map/sitemap_".$page.".xml");      /pic/p>

      $xmlns -> appendChild($xmlnsvalue);

      $sitemapindex        -> appendChild($xmlns);

      $id        -> appendChild($newsid);    /pic/p>

      $loc    -> appendChild($id);  /pic/p>

      $loc    -> appendChild($newsco);    /pic/p>

      $sitemap    -> appendChild($loc);        /pic/p>

      $sitemapindex    -> appendChild($sitemap);

      $main_sitemap   -> appendChild($sitemapindex);

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

      }else{

      $main_sitemap = new DOMDocument('1.0', 'utf-8');  /pic/p>

      $main_sitemap->preserveWhiteSpace = false;

      $main_sitemap -> formatOutput = true;  /pic/p>

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

      $notes = $main_sitemap->documentElement;

      $sitemap    = $main_sitemap -> createElement('sitemap');    /pic/p>

      $loc    = $main_sitemap -> createElement('loc');    /pic/p>

      $id    = $main_sitemap -> createAttribute('id');      /pic/p>

      $newsid  = $main_sitemap -> createTextNode($page);        /pic/p>

      $newsco = $main_sitemap -> createTextNode("/pic/map/sitemap_".$page.".xml");      /pic/p>

      $id        -> appendChild($newsid);    /pic/p>

      $loc    -> appendChild($id);  /pic/p>

      $loc    -> appendChild($newsco);    /pic/p>

      $sitemap    -> appendChild($loc);        /pic/p>

      $notes    -> appendChild($sitemap);

      $main_sitemap    -> appendChild($notes);

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

      }

      /pic/p>

      if($page<$pg){

      echo "sitemap_".$page."生成完成,正進行下一個生成";

      $page++;

      echo "<script>location.href='?page=".$page."';</script>";

      }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 = '';/pic/p>

      $page = intval($page);/pic/p>

      $total = intval($total);/pic/p>

      if(!$total) return array();/pic/p>

      $pages = ceil($total/$pagesize);/pic/p>

      /pic/p>

      if($page<1) $page = 1;

      if($page>$pages) $page = $pages;

      /pic/p>

      $offset = $pagesize*($page-1);

      /pic/p>

      $init = 1;/pic/p>

      $max = $pages;/pic/p>

      $pagelen = ($pagelen%2)?$pagelen:$pagelen+1;/pic/p>

      $pageoffset = ($pagelen-1)/2;/pic/p>

      /pic/p>

      $pagecode='<p class="page">';

      $pagecode.="<span>$page/$pages</span>";/pic/p>

      /pic/p>

      if($page!=1){

      $pagecode.="<a href=\"{$phpfile}=1\">&lt;&lt;</a>";/pic/p>

      $pagecode.="<a href=\"{$phpfile}=".($page-1)."\">&lt;</a>";/pic/p>

      }

      /pic/p>

      if($pages>$pagelen){

      /pic/p>

      if($page<=$pageoffset){

      $init=1;

      $max = $pagelen;

      }else{/pic/p>

      /pic/p>

      if($page+$pageoffset>=$pages+1){

      $init = $pages-$pagelen+1;

      }else{

      /pic/p>

      $init = $page-$pageoffset;

      $max = $page+$pageoffset;

      }

      }

      }

      /pic/p>

      for($i=$init;$i<=$max;$i++){

      if($i==$page){

      $pagecode.='<span>'.$i.'</span>';

      } else {

      $pagecode.="<a href=\"{$phpfile}={$i}\">$i</a>";

      }

      }

      if($page!=$pages){

      $pagecode.="<a href=\"{$phpfile}=".($page+1)."\">&gt;</a>";/pic/p>

      $pagecode.="<a href=\"{$phpfile}={$pages}\">&gt;&gt;</a>";/pic/p>

      }

      $pagecode.='</p>';

      return array('pagecode'=>$pagecode,'sqllimit'=>' limit '.$offset.','.$pagesize);

      }

      ?>

    【PHP生成SiteMap文件代碼的方法】相關文章:

    PHP生成SiteMap文件的代碼03-05

    php sitemap文件生成器代碼10-21

    php自動生成sitemap地圖的代碼11-20

    php自動生成sitemap地圖代碼11-26

    php自動生成sitemap地圖的代碼12-06

    PHP中BB生成sitemap地圖文件的方法12-14

    php生成sitemap.xml的實例代碼09-06

    PHPBB生成sitemap地圖文件的方法09-10

    php動態生成JavaScript代碼03-12

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人