TOP ▲ itcore TOPTIPSsitemap.php

Google検索用 サイトマップの作成 | itcore 2018年

sitemap.xml生成プログラム

登録したいページを指定する。
最終更新日時はファイルのタイムスタンプから生成する。

# vi /home/itcore3/htdocs/sitemap.php
<?php
$host = "www.itcore.jp";
$doc_root = "/home/itcore3/htdocs";
$a_page = array();
$a_page[] = "index.html";
$a_page[] = "company.php";
$a_page[] = "chousa.php";
$a_page[] = "eigyo.html";
$a_page[] = "kenshu.php";
$a_page[] = "kogane.html";
$a_page[] = "hoshu.php";
$a_page[] = "web.php";

echo <<<EOT
<?xml version="1.0" encoding="UTF-8" ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
EOT;
echo "\n";

foreach ($a_page as $page) {
  $file = "$doc_root/$page";
  if ( ! file_exists($file)) continue;
  echo "<url>\n";
  $time = filemtime($file);
  $lastmod = date('Y-m-d',$time).'T'.date('H:iP',$time);
  if (in_array($page, array("index.html", "index.php"))) $page = "";
  echo " <loc>https://$host/$page</loc>\n";
  echo " <lastmod>$lastmod</lastmod>\n";
  echo "</url>\n";
}

echo "</urlset>\n";
?>

Googleクローラーに伝えるため、robots.txtを作成する。

# vi /home/itcore3/htdocs/robots.txt
User-agent: *
Sitemap: https://www.itcore.jp/sitemap.xml

cronに登録して毎日更新する。

# crontab -e
0 0 * * * /usr/bin/php /home/itcore3/htdocs/sitemap.php > /home/itcore3/htdocs/sitemap.xml

生成されたサイトマップ

# cat /home/itcore3/htdocs/sitemap.xml
<?xml version="1.0" encoding="UTF-8" ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
  <loc>https://www.itcore.jp/</loc>
  <lastmod>2018-09-10T15:23+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/company.php</loc>
  <lastmod>2018-08-19T00:48+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/chousa.php</loc>
  <lastmod>2018-09-10T15:22+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/eigyo.html</loc>
  <lastmod>2018-01-10T15:10+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/kenshu.php</loc>
  <lastmod>2016-02-19T14:09+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/kogane.html</loc>
  <lastmod>2018-02-07T14:14+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/hoshu.php</loc>
  <lastmod>2018-04-18T13:11+09:00</lastmod>
</url>
<url>
  <loc>https://www.itcore.jp/web.php</loc>
  <lastmod>2018-01-10T18:26+09:00</lastmod>
</url>
</urlset>