てんねん月桜: アーカイブ・マッピングと「MTEntryDate format」

« 【覚え書き】テンプレート配布先リンク集(3.2x用) | メイン | 【覚え書き】新規インストール時に必要な書き換え&追加ファイル »

2005年11月10日(木) 赤口

●アーカイブ・マッピングと「MTEntryDate format」

 インストールもなんとか突破して、テスト用ブログに日記のバックアップファイル「mt.cgi」をインポートして、再構築したら、エラーが出てしまいました。
 「エントリー以外の場所でMTEntryDate formatを使っちゃいけないよ」みたいな事が、がなんたらかんたら……。
 もしかして……と思い、「設定」→「公開」にある「アーカイブ・マッピング」(3.1xまでの「アーカイブの設定」に該当)を見てみると、ここで使っていました。
 個別アーカイブファイル名を「年/月/日-時間.php」にするために、「アーカイブファイルのテンプレート」欄で
<$MTEntryDate format="%Y/%m/%d-%H%M"$>.php
としていた事が原因でした。
 (月別アーカイブでも、MTEntryDate formatを使用)
 そこで、「出力フォーマット」欄でMTEntryDate formatのタグを除いて
%y/%m/%d-%H%M.php
と指定して再構築してみたら、エラーも出ずに無事再構築が終了しました。
 が!!
 「年」の部分は「2005」のように西暦で4桁の数字になるように指定していたのですが、何故か下2桁で作製されてしまいます。
 検索してみたところ、アーカイブ・マッピングで4桁の西暦にするには
「%Y(大文字)」ではなく「%y(小文字)」にしなくてはいけないとか。

 【11/16追記】
ブログ内にリンク切れを多数発見!!
何故か、本来であれば「年/月/日-時分.php」という形式でアーカイブが作製されるはずなのに、「年/月/日-時.php」という形式でアーカイブが作製されていた事が原因らしい。
アーカイブ・マッピングで分を表示させるには、
「<$MTEntryDate format="%Y/%m/%d-%H%M"$>.php」ではなく、
「<$MTEntryDate format="%Y/%m/%d-%H%n"$>.php」にしなくてはいけないとか。
 参考……Movable Type 3.2 User Manual: Archive File Path Specifiers

 Movable Typeユーザー・マニュアル: テンプレート・ タグ/日付タグのフォーマットとの「微妙」な違い、一体何なのでしょうねぇ?

 【11/11追記】
 その後ブログの再構築を行ったところ、再び「MTEntryDate format」の使用によるエラーが出てしまいました。
 月別テンプレートに、以前使用していたテンプレをコピペした後だったので、テンプレをよく見てみると、月間のエントリータイトル一覧を表示させるために
<? include "../../list_<$MTEntryDate format="%Y/%m/"$>index.php"; ?>
としていた事が原因でした。
 (サイドバーのパーツは、基本的にモジュール化して、インクルードしています)
 これをアーカイブ・マッピングでの指定と同様に
<? include "../../list_%y/%m/index.php"; ?>
と訂正したところ、無事に再構築が終了しました。
 しかし、これでは月間エントリーのタイトル一覧がインクルードされず、仕方なく、月間アーカイブのテンプレートに、それまでインクルードさせていたタグを記述させる事にしました。
 負荷の軽減のためにも、できればインクルードさせたいんだけど、何かいい方法ないかなぁ〜。


トラックバックURL

このエントリーのトラックバックURL:

※重複トラックバック防止プラグインを使用しています。
また、当ブログへのリンクのないトラックバックは受け付けられませんので、ご注意下さい。

コメントする


※スパム対策・情報保護の為、
ご記入頂いたメールアドレスは表示致しません。


(^o^)01 (*^o^*)02 (*^o^*)03 (*^o^*)04 (*^o^*)05') (^_-)-*06 (f*^o^*)07 (^3^)08
(;_;)11 (;_;)12 (;_;)13 (^_;)14 (-_-#)15 (-_-#)16 (-_-#)17 (-_-#)18
Y(;_;)Y21 (-_-)22 (-o-;)23 w(-o-;)w24 (^_^;)25 (^_^;)26 (+o+)27 (+o+)28
(toro)31 (toro)32 (toro)33 (toro)34 (toro)35
(toro)36 (toro)37 (toro)38 (toro)39

 ※スパム対策の為、ひらがなと句読点が文中にまったくない投稿は
  受け付けられませんので、ご注意下さい。