制作者の活動(PR)。

堀北真希ちゃんにうさぎの耳を付けたら可愛いだろうなと思って創造した女子大生キャラクタ
主な作品

堀北真希うさぎ(うさ耳女子大生):平成元年〜平成 3年頃のボシュロムのソフトコンタクト『オプティマ』コマーシャルを真似てコンタクトレンズを着けている場面と仮想CM動画

検索エンジン用サイトマップの作り方。

検索エンジンに自分のサイトの収録コンテンツの存在を知らせるには、XMLに依る検索エンジン用サイトマップを用います。

ここでは、検索エンジン用サイトマップの書式について解説いたします。

検索エンジン用サイトマップの作り方・目次。

検索エンジン用サイトマップの書式。

検索エンジン用サイトマップの書式は以下のようなXMLです。

<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

    <url>
        <loc>ページのURL</loc>
        <priority>優先度</priority>
        <changefreq>更新頻度</changefreq>
        <lastmod>最終更新日時</lastmod>
        </url></urlset>

検索エンジン用サイトマップの宣言と要素。

検索エンジン用サイトマップは以下の宣言・要素からなります。

<?xml ?>宣言

サイトマップはXMLですので、<?xml ?>宣言を初めに行います。

尚、エンコーディングは必ずUTF-8にしなければなりません。

<urlset>要素

サイトマップのルート要素です。

デフォルトの名前空間として、http://www.sitemaps.org/schemas/sitemap/0.9 を指定します。

<url>要素 (必須)

文書URLの情報を纏めた要素です。URL一つにつき、一つの<url>要素を持たせます。

<loc>要素 (必須)

文書のURLを内容とします。

  • このとき、ノード名, ディレクトリ名やファイル名に半角英数字, ハイフン, ドット, アンダスコア, ティルダ以外の文字が含まれている場合には必ずURLエンコードを行います。
  • 特に、仮名文字や漢字など、非アスキィ文字が含まれる場合はノード名部分ならピュニコード化が、その他の部分ではURLエンコードがそれぞれ必要です。
  • また、URLは最長2,048オクテットまでとなります。
<priority>要素 (省略可)

当該文書の希望クロール優先度を表す0.0から1.0までの実数を内容とします。

  • 但し、実際のところ、検索エンジンはこの情報を殆ど意識しないようです。
  • この要素の内容の値は、サイトマップ内での優先順位を表します。従いまして、全部1.0(最優先)としても意味はありません。
<changefreq>要素 (省略可)

当該文書の推定更新頻度を表す文字列を内容とします。

公式にサポートされている文字列は以下の通りです。

always
常に内容が変動する文書です。
hourly
一時間毎に更新される文書です。
daily
毎日更新される文書です。
weekly
毎週更新される文書です。
monthly
毎月更新される文書です。
yearly
毎年更新される文書です。
never
更新を行う事の無い文書です。

尚、これらの値はあくまでも参考程度にしか扱われません。

  • 例えば、alwaysを指定したからと言って、頻繁にクロールが増えると言う事にはなりません。
  • 或いは、neverを指定したからと言って、一回クロールしたらもう二度と来なくなると言う事にはなりませんし、またこの値を指定したからと言って二度と更新してはいけないと言う事にもなりません。
<lastmod>要素 (省略可)

当該文書の最終更新日時を、W3Cが定めたフォーマット(ISO 8601をベースとしている)で記述します。

  • 時刻は協定世界時(UTC)とします。日本時間からは 9時間前にしたものとします。

例えば、日本時間の平成21年11月13日午前10時24分10秒に更新したのであれば、

<lastmod>2009-11-13T01:24:10Z</lastmod>

と記述します。

  • 手書きの場合は秒単位にこだわらなくても良いと思われます。
  • 特にローカルでサイトマップを作成する場合には、ローカルでの更新日時とサーヴァでの更新日時にずれが生じますので(ローカルで作成した文書等をサーヴァに設置するのにタイムラグが発生し、その結果サーヴァから見た更新日時がずれてしまう)、それ程神経質になる必要も無いかと思われます。

検索エンジン用サイトマップに関する注意事項。

エンコーディングは必ずUTF-8にします。

アスキィ文字はシフトJISコードでも日本語EUCでも文字コードは一致しますので、UTF-8が使えない環境の場合はアスキィ文字だけで作成すればよいでしょう。

特に、URLにUTF-8でエンコードされた非アスキィ文字が含まれる場合には、UTF-8で作成出来るならそのまま書いても構いませんが、それ以外の場合、すなわち、

場合には、

アスキィ文字化する必要があります。

例えば、<url>要素の内容として、

<url>http://www.アイドル.uso/堀北真希/</url>

と言うURL(このとき、堀北真希はUTF-8で認識される事とする)なら、

<url>http://www.xn--ccke5ivf.uso/%E5%A0%80%E5%8C%97%E7%9C%9F%E5%B8%8C/</url>

とエンコードします。

サイトマップを設置しているホストとスキーム名及びノード名が一致している必要があります

分かり易く言えば、サイトマップから相対URLでアクセス出来るURLのみ記述出来ると言う事です。

例えば、サイトマップのURLが http://www.uso800.uso/ であれば、

などは全て記述出来ないURLとなります。

サイトマップより上位ディレクトリ・サイトマップ収納ディレクトリ外にある文書類のURLは書けません

例えば、サイトマップが http://www.uso800.uso/user/sitemap.xml 上にある場合、

など、上位ディレクトリにある文書や

など、収納ディレクトリ外にある文書のURLは書けません。

一本のサイトマップに収納出来る<url>要素は五万箇まで、ファイル全体のサイズは10メガバイトまでとなっております

これ以上の文書が入る場合には、サイトマップを分割する必要があります。

このとき、分割したサイトマップを一纏めにする、サイトマップインデックスと言う書式も使えます(後述)。

サイトマップインデックスとその書式。

さて、サイトマップが大きくなり過ぎた場合や、ディレクトリごとにサイトマップを作成している場合には、サイトマップを分割する事が出来ますし、場合に依っては分轄しなければならない事もあります。

そのような場合、分割されたサイトマップを一纏めにするフォーマットとして、サイトマップインデックスと言うのがあります。

サイトマップインデックスに纏めてこれをサイトマップの代わりに送信する事で、分割したサイトマップを一つ一つ送信する手間が省けます。

サイトマップインデックスの書式は以下のようになります。

<?xml version="1.0" encoding="utf-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

    <url>
        <loc>サイトマップのURL</loc>
        <lastmod>最終更新日時</lastmod>
        </url></sitemapindex>

サイトマップインデックスの宣言と要素。

サイトマップインデックスは以下の宣言・要素からなります。

<?xml ?>宣言

サイトマップインデックスもXMLですので、<?xml ?>宣言を初めに行います。

尚、エンコーディングは必ずUTF-8にしなければなりません。

<sitemapindex>要素

サイトマップインデックスのルート要素です。

デフォルトの名前空間として、http://www.sitemaps.org/schemas/sitemap/0.9 を指定します。

<url>要素 (必須)

サイトマップのURLの情報を纏めた要素です。サイトマップ一つにつき、一つの<url>要素を持たせます。

<loc>要素 (必須)

サイトマップのURLを内容とします。注意事項はサイトマップの<loc>要素と同じです。

<lastmod>要素 (省略可)

当該サイトマップの最終更新日時を、W3Cが定めたフォーマット(ISO 8601をベースとしている)で記述します。詳細はサイトマップの<lastmod>要素をご覧ください。

サイトマップインデックスに関する注意事項。

サイトマップインデックスに於いて注意すべき点は検索エンジン用サイトマップでの注意事項と同じです。

<url>要素は五万箇までと言う制限がありますので、サイトマップも五万枚まで入れられる事になります。

しらぎくのウェブサイト作成入門サイトマップ

ページ外へのご案内。

marguerite.site@gmail.com