エントリー記事

MT4のsitemap.xmlにウェブページの一覧を追加する

MT4

Movable Typeでsitemap.xmlを自動書きだししてる人は多いと思います。詳しくはMovableTypeでGoogle Sitemaps作る(MovableType備忘録さん)をご参考に。

で、今回のお題は、これにMT4の新機能「ウェブページ」で作られたページもsitemap.xmlに追加してみます。sitemap.xmlのテンプレートに、こう記述してみました。


<MTIgnore>ウェブページ</MTIgnore>
<MTPages>
<url>
<loc><$MTPagePermalink encode_xml="1"$></loc>
<lastmod><$MTPageModifiedDate format="%Y-%m-%dT%H:%M:%S"$><$MTBlogTimezone$></lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</MTPages>

これで、ウェブエージ部分は書き出されます。書き出されたウェブページのsitemap.xmlはこんな感じ。


<url>
<loc>https://studiomd.jp/contact/form.cgi</loc>
<lastmod>2007-09-22T16:46:59+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/contact/net.php</loc>
<lastmod>2007-09-22T17:07:45+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/thissite/</loc>
<lastmod>2007-09-22T19:33:14+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/profile/</loc>
<lastmod>2007-09-24T08:42:57+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/thissite/privasy.php</loc>
<lastmod>2007-09-24T12:41:40+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/thissite/hyouki.php</loc>
<lastmod>2007-09-24T14:36:49+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/thissite/menseki.php</loc>
<lastmod>2007-09-24T14:43:48+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://studiomd.jp/contact/faq.php</loc>
<lastmod>2007-09-24T15:11:07+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>

MTPagesのアトリビュート属性を使えば、日付順とか昇順、降順の並び替えとかできます。カテゴリ分けはされませんが、どうしてもそうしたい場合は、folder属性で個別に用意しておくとかどうでしょうか。


<MTIgnore>このサイトについて</MTIgnore>
<MTPages folder="thissite">
<url>
<loc><$MTPagePermalink encode_xml="1"$></loc>
<lastmod><$MTPageModifiedDate format="%Y-%m-%dT%H:%M:%S"$><$MTBlogTimezone$></lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</MTPages>

<MTIgnore>お問い合わせ</MTIgnore>
<MTPages folder="contact">
<url>
<loc><$MTPagePermalink encode_xml="1"$></loc>
<lastmod><$MTPageModifiedDate format="%Y-%m-%dT%H:%M:%S"$><$MTBlogTimezone$></lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</MTPages>

でもこの方法だと、フォルダが増える度に自分でテンプレートに追加しなきゃならないんですけどね。当サイトの場合、そこまで求めていないのでやりませんが(^^;)。他に良い方法を思いついたらまた書きまーす。

自己レス

MTSubFolders/MTTopLevelFoldersとか使えそうです...ちょっとやってみます