sitemap.xml
ホームページの案内図だよ
検索エンジンさん向けだよ
XMLファイルだよ
簡単に書くよ
sitemap.xmlとは
GoogleやYahoo!のような検索エンジンさん
(キーワードを入力すると条件に合うホームページを探してくれるホームページ)向けに作られた「ホームページの案内図」のこと
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・サイトマップ
・検索エンジン
・クローラ
について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
サイトマップは「ホームページの案内図」です。
「このホームページには、こんなページが、ありますよ~。そのページのURLは、これですよ~」などが書いてあります。
検索エンジンは「キーワードを入力すると条件に合うホームページを探してくれるWebサイト」です。
よく分からない人は、GoogleやYahoo!のことだと思ってください。
クローラは「ホームページの情報を収集して回るロボット」です。
よく分からない人は、検索エンジンの手下だと思ってください。
クローラが集めてきた情報を整理して、検索エンジンは条件に合うホームページを案内しています。
以上を踏まえて
検索エンジンさんのクローラに向けて用意するサイトマップ
が「sitemap.xml」です。
クローラは検索エンジンさんの手先なので
検索エンジンさん向けのホームページ案内図
と捉えても かまいません。
「sitemap.xml」は、その名の通り「sitemap.xml」というファイル名にするのが一般的です。
その気になれば「robots.txt」という名前の「検索エンジンのクローラに指示を出すためのファイル」に記述することで「sitemap.xml」以外のファイルを検索エンジンさん向けサイトマップに指定することも可能ですけどね。
特別な事情がない限りは「sitemap.xml」という名前にして、できるだけ上の方(URLが短くなる方)に設置するのが慣例です。
また「sitemap.xml」はXMLファイル(XMLと呼ばれているルールに従って書かれたファイル)です。
「sitemap.xml」の中には、WebページのURLがズラズラっと書かれています。
実際の「sitemap.xml」は例えば以下のような内容になっています。
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<url>
<loc>http://wa3.i-3-i.info/word11.html</loc>
<priority>0.8</priority>
<changefreq>weekly</changefreq>
<lastmod>2013-04-28</lastmod>
</url>
<url>
<loc>http://wa3.i-3-i.info/word12.html</loc>
<priority>0.8</priority>
<changefreq>weekly</changefreq>
<lastmod>2013-04-28</lastmod>
</url>
</urlset>
中身を簡単に説明しておきますね。
まず
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
~
</urlset>
の部分は決まり文句です。
深く考えず「こう書くのがルールなんだな~」と思ってください。
<url>
<loc>http://wa3.i-3-i.info/word11.html</loc>
<priority>0.8</priority>
<changefreq>weekly</changefreq>
<lastmod>2013-04-28</lastmod>
</url>
の部分が各ページのURLとそれに関する情報です。
この中の
<url>
~
</url>
は「ここからここまでで1つのセットだから」を意味します。
「sitemap.xml」に載せるURLが増えれば
<url>
~
</url>
<url>
~
</url>
のように増えていきます。
<loc>http://wa3.i-3-i.info/word11.html</loc>
は実際のURLを記述している部分です。
この例では「『http://wa3.i-3-i.info/word11.html』っていうURL(に該当するファイル)があるよ」の意味になります。
なお「<loc>~</loc>」は省略不可です。
必ず指定する必要があります。
<priority>0.8</priority>
の部分は重要度の指定です。
「0.1」~「1.0」の間で「他のページと比較して」相対的な重要度を指定します。
この重要度はあくまで相対的なものです。
全部のページを「1.0」にしても、検索エンジンさんが全部のページを優先して見てくれるわけでは ありません。
ご注意ください。
ちなみに「<priority>~</priority>」は省略可能です。
よく分からなければ書かなくても大丈夫です。
<changefreq>weekly</changefreq>
の部分は更新頻度です。
「これくらいの頻度で更新しているから、それを踏まえて見に来てね」とクローラさんにお願いしています。
更新頻度は
・always:アクセスされる度に更新してるよ
・hourly:1時間毎に更新してるよ
・daily:毎日更新してるよ
・weekly:毎週更新してるよ
・monthly:毎月更新してるよ
・yearly:毎年更新してるよ
・never:滅多に更新しないよ
の中から1つだけ指定します。
なお「<changefreq>~</changefreq>」も省略可能です。
よく分からなければ書かなくても大丈夫です。
<lastmod>2013-04-28</lastmod>>
は更新日時です。
省略可能です。
指定しなくても大丈夫です。
指定しておくと「あっ、この日に更新したんだ。じゃあ俺が知ってるのより新しいやつだね」とクローラさんが判断してくれるのかもしれませんが、実際どうかは分からないので気休め程度に考えてください。
これが「sitemap.xml」の書き方です。
世の中には、URLを入力すると自動的に「sitemap.xml」を作ってくれるサービスもあります。
自分でチマチマ書くのが難しそうだったら、それらのサービスを利用するのも良いと思います。
あっ、そうそう。
「sitemap.xml」には、いくつか制限があります。
まずはURLの個数です。
50,000個までしか載せられません。
次にファイルの大きさです。
上限が10MBです。
10MBを越える場合は2つに分割する必要があります。
あとは、ファイルの文字エンコード指定を「UTF-8」にすることくらいですかね。
それだけ知っていれば、自分で「sitemap.xml」を作れると思います。
実際、わわわIT用語辞典に設置している「sitemap.xml」(https://wa3.i-3-i.info/sitemap.xml)は私自身が「sitemap.xml」を自動生成するプログラムを作って、そいつに作らせています。
一言でまとめるよ
まぁ「sitemap.xml」って単語が出てきたら「検索エンジンさん
(GoogleとかYahoo!のような、キーワードを入力すると条件に合うホームページを探してくれるホームページ)向けのホームページの案内図なんだな~」と お考えください。






