エントリーアーカイブに同一カテゴリーの記事一覧を表示する(ダイナミックパブリッシングの場合)

注)これは、ダイナミックパブリッシングを使用している自分のためのメモでもあります。
同種のカスタマイズについては、「個別エントリーアーカイブに同一カテゴリーのエントリーを表示」 by 小粋空間をはじめいろいろなサイトで紹介されていますが、動的生成の場合は、MTTagInvokeプラグインがPerlで書かれているため、使用できません。ここでは、なぜPerl版プラグインがダイナミックパブリッシングで使用できないかは省略します。手抜き( ̄◇ ̄;)
また、「ダイナミックパブリッシング下でPerlのプラグインを使用する方法」 by Wing Memo(Perl版プラグインを使用する部分だけを静的生成にして部品ファイルを作成し、MTInclude file="○○.html"で動的ページに取り込むという方法)をやろうとしても、この部品ファイル(インデックステンプレート)を再構築する際、「<$MTEntryCategory$>が<MTEntries>タグ内で使用されていません!」とのエラーメッセージで再構築エラーになってしまい使用することができません。なぜかは、ナゾ…。
そこで、ダイナミックならではのSmartyを使用した表示方法を紹介します。困ったときのSmarty!(需要があるかは別にして。)(;´д`)
まず、当該エントリーのサイドバーあたりに、”関連記事”として、同一カテゴリのリストを表示するには、

<MTEntries lastn="○" category="<MTEntryCategory>">

が使用できればよいわけですが、MTタグをcategory属性に書くことはできません。そこで<MTEntryCategory>の内容を文字列として取得して、<MTEntries>のcategory属性に代入してあげればよいのです。簡単でしょ?
ちなみにおいらが使用しているコードを紹介します。
<div class="sidetitle">
関連記事
</div>
<div class="side">
{{capture name="entry_category"}}<$MTEntryCategory$>{{/capture}}
<MTEntries lastn="20" category="`$smarty.capture.entry_category`">
<a href="<$MTEntryPermalink$>" title="e<$MTEntryID$>"><$MTEntryTitle$></a><br />
</MTEntries>
</div>

※CSSクラス宣言は、小粋空間テンプレートに対応しています。

トラックバック(3)

このブログ記事を参照しているブログ一覧: エントリーアーカイブに同一カテゴリーの記事一覧を表示する(ダイナミックパブリッシングの場合)

このブログ記事に対するトラックバックURL: http://www.molto-vivace.net/x/mt-tb.cgi/243

MovableTypeのダイナミックパブリッシングで、同一カテゴリの記事一覧を表示させるための方法です。... 続きを読む

ここはダイナミック・パブリッシングをテーマにしているので、今は使っていなくても、ダイナミックに関係するカスタマイズは気がついたら覚え書きしていくことにしよ... 続きを読む

Movable Typeにおいていくつか関連記事プラグインがある。実はダイナミッ... 続きを読む

コメント(4)

ダイナミックパブリッシングのTIPSは、ネット上にあまりなくて困っていました。
とても参考になり感謝しています。さっそく、設置させていただきました。m_m

おはつです。
ダイナミックの検証も兼ねて、いろいろやってるところですが、いかんせん情報が少ないですよね。エントリでは、Smartyの基礎の部分は省略していますが、お役に立って幸いです。WEBに直接コードを書くのは邪道かもしれません。本来は、PHPでプラグインのソースコードが書ければよいのでしょうけど。Perlの文法を知ってる人でPHPもできるよって人がいたら、早く移植して欲しいものです。ダイナミックは少数派?のようですがガムバりましょう!

早速使わせてもらっています。ちょうど困っていた所で、助かりました。

いえいえ律儀にありがとうございます。今は、サーバーの能力不足から、ダイナミックを止めましたので、3.33-jaでは検証していませんが、お役に立てて光栄です。

コメントする

アーカイブ

MovableType FireFox FEEDS1 FEEDS2 track feed 人気ブログランキング にほんブログ村 クラシックブログ ピアノ・鍵盤楽器へ

このブログ記事について

このページは、いちろうが2006年6月 3日 13:30に書いたブログ記事です。

ひとつ前のブログ記事は「メヌエット」です。

次のブログ記事は「ページ分割に関する考察(ダイナミックパブリッシングの場合)」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。