現状、下記のような構成になっているのだが、
インデックステンプレートを作成すると、corpディレクトリ以下に作成されてしまい、トップレベルのsitemapが自動生成されない。また、作成されたとしても、各支店のsitemap.xmlをどうやって読んでもらうようにすればいいのか。
まあ、こういうときの基本は本家のドキュメントをしっかりと読む、ということにつきる。
あとはrobots.txtにサイトマップの位置を記述して、各検索エンジンのクローラーに教えてあげればよい。
数時間後にはGoogleのクローラーがきて、いろいろ収集してくれる。
example.domain /corp/ 本社のブログこのドメインは本社のブログに割り当てているのだが、TypePadの仕様上ブログはサブディレクトリ以下に作ることが望ましい、とのことなので、corpディレクトリ以下に作っている。
|
+/branch_A/ 支店Aのブログ
|
+/branch_B/ 支店Bのブログ
|
.
.
.
インデックステンプレートを作成すると、corpディレクトリ以下に作成されてしまい、トップレベルのsitemapが自動生成されない。また、作成されたとしても、各支店のsitemap.xmlをどうやって読んでもらうようにすればいいのか。
まあ、こういうときの基本は本家のドキュメントをしっかりと読む、ということにつきる。
サイトマップ インデックス ファイル (複数のサイトマップ ファイルのインデックス) を使用する場合つまり、こう記述すればよいわけだ。
<?xml version="1.0" encoding="UTF-8"?>トップレベルのsitemapは各ブログが自動生成するsitemap.xmlへのポインタだけの役割に徹する、各ブログのsitemap.xmlはTypePadが更新の旅に自動生成するため、最新の状態が保てるという仕組みになる。
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
/* 本社のサイトマップ */
<sitemap>
<loc>http://example.dmain/corp/</loc>
</sitemap>
/* 支店Aのサイトマップ */
<sitemap>
<loc>http://example.dmain/branch_A/</loc>
</sitemap>
/* 支店Bのサイトマップ */
<sitemap>
<loc>http://example.dmain/branch_B/</loc>
</sitemap>
.
.
.
</sitemapindex>
あとはrobots.txtにサイトマップの位置を記述して、各検索エンジンのクローラーに教えてあげればよい。
About /robots.txt In a nutshell Web site owners use the /robots.txt file to give instructions about their site to web robots; this is called The Robots Exclusion Protocol.こんな感じの内容になる。
$ cat ./robots.txtGoogle Webmaster ToolsのURLの合計値が、支店のsitemap.xmlで記述されたURLの合計になっていることを確認できる。
User-agent: *
Sitemap : http://example.domain/sitemap.xml
数時間後にはGoogleのクローラーがきて、いろいろ収集してくれる。