ここから本文です

Sitemapsの記述方法

更新日 2010年11月24日

Sitemaps形式はサイトマップの一般的なフォーマットで、サイト内のウェブページおよびそのウェブページに関する最終更新日や更新頻度、サイト内でのウェブページの優先順位などをXML形式で記述したものです。Sitemaps形式のXMLの記述方法を以下に解説します。

基本的な記述の方法とXMLタグの定義

  1. SitemapsファイルはUTF-8のエンコードで作成します。
  2. サイト内のウェブページの情報は、<url>~</url>でくくります。
  3. サイト内のウェブページの情報は、サイト内のウェブページURLおよびそのウェブページに関する最終更新日や更新頻度、サイト内でのウェブページの優先順位の情報で構成されます。
    属性説明
    <loc>必須ウェブページのURL。httpなどのプロトコルから始めます。2,048文字以下で指定します。
    <lastmod>省略可能ファイルの最終更新日時で、時刻の部分を省略して「YYYY-MM-DD」の形式で記述することもできます。時刻を記述する場合は、W3C Datetime形式(英語、外部サイト)で記述します。
    <changefreq>省略可能ウェブページの更新頻度を指定します。検索エンジンはこの値を参考として巡回頻度を調整しますが、かならずしも指定されたウェブページの更新頻度にあわせて巡回するとは限りません。
    alwaysアクセスするたびに内容が更新されるウェブページに指定します。
    hourly毎時更新されるウェブページに指定します。
    daily毎日更新されるウェブページに指定します。
    weekly毎週更新されるウェブページに指定します。
    monthly毎月更新されるウェブページに指定します。
    yearly毎年更新されるウェブページに指定します。
    never更新のないアーカイブページに指定します。
    <priority>省略可能サイト内のほかのウェブページと比較したときの優先度を0.0から1.0までの値で指定します。クローラーに重要なウェブページを知らせるためのもので、デフォルトの優先度は0.5です。ただし、この優先度が、検索結果での表示順序に影響することはありません。なお、サイト内のすべてのウェブページに高い優先度を指定しないでください。優先度は相対的なもので、検索エンジンが、サイト内の重要なウェブページを選択する場合に使用します。
  4. サイト内の複数のウェブページの情報は、<urlset>でまとめます。
  5. <urlset>には、ネームスペース「xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"」の属性を記述します。
  6. 「<?xml version="1.0" encoding="UTF-8"?>」を冒頭の行に追加します。
1つのウェブページの情報を記述したSitemapsの例
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>http://www.example.com/</loc>
      <lastmod>2005-01-01</lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.8</priority>
   </url>
</urlset>
複数のウェブページの情報を記述したSitemapsの例
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>http://www.example.com/</loc>
      <lastmod>2005-01-01</lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.8</priority>
   </url>
   <url>
      <loc>http://www.example.com/catalog?item=12&amp;desc=vacation_hawaii</loc>
      <changefreq>weekly</changefreq>
   </url>
   <url>
      <loc>http://www.example.com/catalog?item=73&amp;desc=vacation_new_zealand</loc>
      <lastmod>2004-12-23</lastmod>
      <changefreq>weekly</changefreq>
   </url>
   <url>
      <loc>http://www.example.com/catalog?item=74&amp;desc=vacation_newfoundland</loc>
      <lastmod>2004-12-23T18:00:15+00:00</lastmod>
      <priority>0.3</priority>
   </url>
   <url>
      <loc>http://www.example.com/catalog?item=83&amp;desc=vacation_usa</loc>
      <lastmod>2004-11-23</lastmod>
   </url>
</urlset>

URLのエスケープ処理

URLのなかの文字列は、次のようなエスケープ処理を行う必要があります。

 文字エスケープ処理
アンパサンド&&amp;
一重引用符(シングルクォート)'&apos;
二重引用符(ダブルクォート)"&quot;
不等記号(より大)>&gt;
不等記号(より小)<&lt;
「&」をエスケープ処理した例
http://www.example.com/search?p=example&desc=lower(エスケープ処理前)
http://www.example.com/search?p=example&amp;desc=lower(エスケープ処理後)

URLのエンコード処理

URLに含まれるASCII(英字・数字・記号など)以外の文字は、ウェブページをホスティングしているサーバーのエンコードに従って、エンコード処理を行います。

エンコードにUTF-8を使用しているサーバーの場合
http://www.example.com/search?サイトマップ(エンコード処理前)
http://www.example.com/search?%e3%82%b5%e3%82%a4%e3%83%88%e3%83%9e%e3%83%83%e3%83%97(エンコード処理後)
エンコードにEUC-JPを使用しているサーバーの場合
http://www.example.com/search?サイトマップ(エンコード処理前)
http://www.example.com/search?%a5%b5%a5%a4%a5%c8%a5%de%a5%c3%a5%d7(エンコード処理後)
注意
この情報は、sitemaps.orgでの記述に基づいています。詳細や最新の情報については、sitemaps.org(外部サイト)をご覧ください。

個別リンクURL