Movable Type 備忘録

 Google Sitemapsへの更新通知を自動化する

以前、MovableTypeでGoogle Sitemaps作るで、サイトマップの作り方を紹介しました。

今回はその延長で、エントリを投稿したらGoogleへの更新通知を自動化するカスタマイズを紹介します。

今回参考にしたサイトは、Open MagicVox.net 様です。

Googleへの自動更新通知は、GoogleSitemapsPingプラグインを使って、以前作ったサイトマップにタグを埋め込むだけです。

GoogleSitemapsPingプラグインの入手はこちらから▼
http://www.magicvox.net/archive/2006/05201647.php

GoogleSitemapsPingプラグインのインストール

まず、GoogleSitemapsPingプラグインをインストールします。 上記URLからGoogleSitemapsPingプラグインをダウンロードして、mt/plugins/ の中にアップロードしてください。

既存のサイトマップの変更

サイトマップを作成していない人は、こちらのMovableTypeでGoogle Sitemaps作るを参考に作成してください。

以下にわたしのサイトのサイトマップのコードを記します。

  1. <?xml version="1.0" encoding="<$MTPublishCharset$>"?>
  2. <!--
  3. <$MTGoogleSitemapsPing template="Google Sitemaps"$>
  4. -->
  5. <urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
  6. <url>
  7. <loc><$MTBlogURL encode_xml="1"$></loc>
  8. <priority>1.0</priority>
  9. </url>
  10. <MTEntries lastn="9999">
  11. <url>
  12. <loc><$MTEntryPermalink encode_xml="1"$></loc>
  13. <lastmod><$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></lastmod>
  14. </url>
  15. </MTEntries>
  16. </urlset>

上記コードは、MovableTypeでGoogle Sitemaps作るで紹介したサイトマップを作成するコードに、青い字の部分を追加したものです。 赤い字の部分はサイトマップのテンプレート名称で、必ず記入する必要があります。

- 2006.07.25 追記 -

前回の更新から指定時間内( デフォルトでは1時間 )は更新通知されません。 この規定時間を変更したい場合には、以下のようにすることで変更できます。

<!--
<$MTGoogleSitemapsPing period="30" template="Google Sitemaps"$>
-->

上記の青い字の部分では規定時間を30分と指定しています。

修正したら保存して再構築します。

サイトマップの内容確認

再構築したら、sitemaps.xml をテキストエディタで開いて、以下のような記述が追加されていることを確認します。

  1. <!--
  2. MTGoogleSitemapsPing message: Successfully pinged for "http://●●●.com/sitemaps.xml" at YYY.
  3. -->

上記のようなメッセージでなく、error という記述があったら、サイトマップのテンプレート名称が正しいかを確認してください。

- 2006.07.25 追記 -

記述されるメッセージ内容は以下の4種類あるようです。

  1. MTGoogleSitemapsPing message: Successfully pinged for "http://●●●.com/sitemaps.xml" at YYY.

これは正常に更新通知された場合に記述されるメッセージです。

  1. MTGoogleSitemapsPing error: <template> should be specified.

これはテンプレート名称が指定されていない場合に記述されるメッセージのようです。

  1. MTGoogleSitemapsPing error: a template which named "http://●●●.com/sitemaps.xml" is not found.

これはテンプレート名称が間違っていると記述されるメッセージのようです。

  1. MTGoogleSitemapsPing message: You need not to ping for "http://●●●.com/sitemaps.xml" now.

これは前回の更新通知から規定時間以上経過していない場合に記述されるメッセージのようです。

これらの説明はOpen MagicVox.netさんのところで明記されています。

以上で、自動更新の設定は完了です。

SEE YOUハート3

 Trackback Pings(0)

No trackbacks found.

 Comments(5)

#1: Posted by magnet @ July 25, 2006 [REPLY]
user-pic

こんにちは^^早速導入しました。
いつも貴重な情報ありがとうございます^^

#2: Posted by bzbell @ July 25, 2006 [REPLY]
user-pic

>>1 magnet さん

こんにちわ^^

いえいえ、とんでもないです。
わたしの方こそ大変お世話になっております。

これからもよろしくです( ̄∇ ̄)

#3: Posted by ikias @ July 25, 2006 [REPLY]
user-pic

どうも、どうも。早速導入しました(^^)。

#4: Posted by Author Profile Page oscar @ July 25, 2006 [REPLY]
user-pic

bzbellさん、こんばんわ!
短時間で連続して更新Ping送ってしまうと、違うメッセージになりますよね。そこら辺も追記したらどうでしょうか。

#5: Posted by bzbell @ July 25, 2006 [REPLY]
user-pic

>>3 ikias さん
>>4 oscar さん

こんにちわ^^
コメントありがとうございます。

> 短時間で連続して更新Ping送ってしまうと、違うメッセージになりますよね。そこら辺も追記したらどうでしょうか。

違うメッセージというのは、以下のようなメッセージのことでしょうか。

「MTGoogleSitemapsPing message: You need not to ping for…」

少し時間を置かないと更新通知はされないみたいですね。

プラグインのコードを見ると、1時間に2回以上の送信はしない方が良いような記述があります。

追記しておきますね。

 Post a Comment

 

コメント用フィード