MTMultiBlog タグブロック内での MTInclude タグの入れ子について

MTMultiBlog タグブロック内での MTInclude タグの入れ子について

Posted at January 4,2009 12:33 AM
Tag:[MTMultiBlog, TroubleShooting]

現在、Movable Type の MultiBlog プラグインでポータルブログの実験中ですが、MTInclude タグの入れ子があると再構築でエラーになるようです。
確認したのは 4.23 + Windows ローカル環境のみで、他の環境は確認できていません。

まず、ポータルブログにするブログのメインページに次のようなサブテンプレートがあります。

<mt:Entries>
    <$mt:Include module="ブログ記事の概要"$>
</mt:Entries>

サブテンプレートからインクルードしている「ブログ記事の概要」テンプレートモジュールでは、さらに MTInclude タグを使って「ブログ記事のメタデータ」テンプレートモジュールをインクルードしています。メタデータには投稿日時や投稿者、コメント件数やトラックバック件数など、ブログ記事の投稿情報が含まれます。

次に、ポータルブログの収集対象となるブログの作成と、各ブログの MultiBlog プラグインの設定を行ったあと、上記のサブテンプレートを MTMultiBlog タグで括り、

<mt:multiBlog mode="loop">
<mt:Entries>
    <$mt:Include module="ブログ記事の概要"$>
</mt:Entries>
</mt:multiBlog>

とすると、メインページの再構築時に次のエラーが発生します。

再構築時のエラー

MTInclude でインクルードしている内容を元テンプレートに貼り付けると、再構築エラーは解消します。
「ブログ記事の概要」テンプレートモジュールでは「カテゴリ」テンプレートモジュール、「タグ」テンプレートモジュールをインクルードしていますが、それらについても同様です。

要約すると、MTMultiBlog タグから1回のインクルードは大丈夫ですが、入れ子のインクルードがあると再構築エラーになるようです。大雑把な説明ですいませんが、当方の設定ミス等がありましたらご指摘ください。

関連記事
トラックバックURL


コメント

MT4では、
引っ張ってきている先のテンプレートじゃなく、
じぶんとこのテンプレートでモジュール探してエラーになるようです。
入れ子先のMTInclude module="・・・にも
ブログのIDを指定してやれば大丈夫だとか。


<meta name="keywords" content="<$MTInclude module="キーワード"$>" />
のモジュールである「キーワード」がどこのブログから取得されて来るべきなのかをより明確にするため、
<meta name="keywords" content="<$MTInclude blog_id="1" module="キーワード"$>" />


http://www.akinakano.com/mt/2007/10/mtmultiblog.php

上記ページで助けられました^^

[1] Posted by 指定をしたらエラー出ないようですよ : February 25, 2009 10:19 AM


同じブログ ID のテンプレートモジュールを読み込む場合、blog_id モディファイアで指定しなくても構いませんが、そのテンプレートモジュールを他のブログ ID のブログで読み込んでいる場合は、指定しておく必要があります。
もし、読み込み先のブログに「ヘッダーコンテンツ」と「概要」テンプレートモジュールがあり、そのテンプレートモジュールを利用したい場合は、「ヘッダー」テンプレートモジュールで blog_id の指定をおこなう必要はありません。

http://www.movabletype.jp/blog/multiblog_template_module.html

sixapartの説明ではこんな感じでしたが
↑とは違う現象なんですかね?

[2] Posted by 指定をしたらエラー出ないようですよ 追記 : February 25, 2009 10:27 AM

>指定をしたらエラー出ないようですよさん
こんにちは。
確かにblog_idを指定したらエラーが出なくなりました。
MultiBlogタグでincludeタグを利用すると、処理中のブログIDに属するテンプレートモジュールを検索してしまうという、バグであることも分かりました。
情報ありがとうございました。

[3] Posted by yujiro logo : February 25, 2009 12:22 PM
コメントする
greeting

*必須

*必須(非表示)


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

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

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

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