Movable Type のアーカイブページへのリンクを相対パス(ホストからの相対URL)で表示する

Movable Type のアーカイブページへのリンクを相対パス(ホストからの相対URL)で表示する

Posted at October 29,2009 1:41 AM
Tag:[Archive, MovableType, TemplateTag]

Movable Type のアーカイブページ(ブログ記事ページ・月別アーカイブページ・カテゴリアーカイブページ)へのパーマリンクを、相対パス(ホストからの相対URL)で表示するカスタマイズです。以下、ブログ記事ページを例に説明します。

通常、ブログ記事ページのパーマリンクは MTEntryPermalink タグを利用します。

<a href="<mt:EntryPermalink />"><mt:EntryTitle /></a>

このブログ記事ページへのアーカイブパスが

yyyy/mm/entry-basename.html

となっている場合、URLの代わりに相対パスで出力するには、次のようにします。

<a href="<mt:BlogRelativeURL /><$mt:EntryDate format="%Y/%m/"$><mt:EntryBasename separator="-" /><mt:BlogFileExtension />"><mt:EntryTitle /></a>

MTBlogRelativeURL タグは、ホストからの相対URLを出力するタグです。MTEntryDate タグはブログ記事の公開日時を出力し、format モディファイアを適用することで任意のフォーマットで出力できます。

MTEntryBasename タグはファイル名を出力します。separator モディファイアは、ファイルに含まれる「_」を「-」に変換するものです。MTBlogFileExtension タグはアーカイブの拡張子をピリオド付きで出力します。

このようにテンプレートタグを書き換えることで、

http://user-domain/2009/11/07/post.html

という URL を、

/2009/11/07/post.html

で出力することができるようになります。

アーカイブパスによって設定内容は異なりますが、以下のページを参考にすれば、すべてのアーカイブページの相対パスが出力できると思います。

Movable Type 4 ドキュメント - アーカイブマッピングで利用するアーカイブファイル名の定義
関連記事
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)