「このカテゴリの最新記事一覧」を表示するプラグイン「MTTagInvoke」
以前からずっと設置したくてできなかった、個別ページにおける、そのカテゴリの最新記事一覧。
やり方としては、
で行けそうなカンジはするのですが、どうやらこの「category」属性は変数を受け付けないらしいです。何度やっても同カテゴリが表示されない。というわけで、ずっと諦めてました。
で、どうやら新しいカテゴリアーカイブのテンプレートを作成したら上手くいくらしい、という事を聞きつけて、やってみた。結果的には上手く行ったのだが、なんともスマートじゃない。
というわけで、ぐぐった結果、::: CROQU ::: : 「This Category Entries (easy)」さんの所で素晴しいプラグインをハケーン、即導入となりましたので、解説しようと思います。以下、先の「スマートじゃない」方法と合わせて解説しますです。
プラグイン使用の方法
なぜ、プラグインを使用してまでしないと実現できないかは上に書いたとおりです。残念ながら現状のmovabletypeでは実現できません。
そこで便利なプラグインの登場です。このMTTagInvokeというプラグインは簡単に言うと、category等の属性に変数を使えるようにするプラグインなのです。
これで個別ページ(Indivisual archives)の属するカテゴリの一覧を抜き出せるという事になります。面倒ですね。
↑ここでプラグインをダウンロード、解凍します。
MTTagInvoke.pl
というファイルが生成されるのでMTのpluginフォルダに入れます。
次に、個別ページのテンプレートに以下の文を加えます。
これで、個別ページにおける、「このカテゴリの最新6つの記事」が実現できました。一体これはどういうことなのか?
少しだけ解説します。
MTTagInvoke
tagnameで指定したMTタグで有効です、ということ。この場合、MTEntriesというタグに関することだということを宣言するだけでなく、実際にはとしなくてならない部分の記述も不要になる。便利!
MTTagAttrivute
nameで指定したアトリビュート(変数)がMTタグに置き換わる。
ここでは categoryの変数にMTEntryCategoryを代入しなさい、ということ。つまり個別ページのカテゴリを随時代入することができるのです。すげえ。
同様にlastnも5を代入です。MTもこれがデフォで出来ると便利なのにね。
MTTagContent
上記宣言を元に、実際に表示させたい部分にこのタグを使います。
上でも書いた通り、MTEntries等のタグも必要ありません。この辺がこのプラグインの凄いところですね。
プラグイン未使用の方法
プラグインに頼りたくないアナタにうってつけの方法があります。しかしスマートじゃない。何故この方法がスマートじゃないのか、それは新しいテンプレートを作成しなくてはならないところなのです。
「最新記事」ということは、エントリ投稿毎に生成されるわけですので、ただでさえ重たいMTのリビルドにも影響します。よって、ただでさえ重たい当サイト等はこの方法を絶対にとるべきではなかったのです。
では、その方法を。
1.php化
MTをphp化してない方はコチラ↓のエントリを見てphp化を行いましょう。
インクルード、というファイルの埋め込みを行わなくてはならない為のphp化です。やっておいて損はありません。
2.新しいテンプレの作成
MTの管理画面に行き、
テンプレート⇒新しいアーカイブテンプレートを作る
テンプレートの名前⇒CategoryRecentEntry(テキトー)
このテンプレートにリンクするファイル⇒空欄
テンプレートの中身は↓このように。
アーカイブの設定
新しいアーカイブテンプレートの設定をしないといけませんね。
ウェブログの設定⇒アーカイブの設定
で、よく見ると、カテゴリーのセクションに先のCategoryRecentEntryが増えているはずですので、アーカイブ・ファイルのテンプレートのところに、
と書きます。これはあくまでも一例です。incというフォルダの中にファイルを生成するなら↑のように書きます。これは好みで。inc/はなくても構いません。
そして保存、です。
リビルド
いよいよリビルドです。ドキドキですね。エラーがでたら、最初からやり直しです。泣きながら再度チャレンジしてみて下さい。
設置
ここで、実際の個別ページ(indivisual archives)に設置します。ここで、phpのインクルードを利用するのです。
テンプレートモジュール化を施したことがある方はすんなりいくでしょう。
先ほどのcr_(カテゴリ).phpというファイルを本ファイルに貼り付けてやりましょう
これだけです。phpサイコーですね。モジュール化サイコーですね。
まとめ
こんなことをしないと、思ったことができないのかムーバブルタイプは!とお怒りの方も大勢いらっしゃることと思います。
しかし、このカスタマイズこそ、movabletypeの醍醐味なのです。面倒くさいのがイヤな方はホスティ系のweblogがありますので、そちらでやるべきです。
チマチマ弄ってちゃんと思い通りになったときの爽快感はたまりませんんよ(笑
ブログにおいて、一見さんが一番訪れる可能性が高い個別ページ。そこから次なるサイト内ページを閲覧していただく為に、必要不可欠な別ページ(トップページ含む)へのリンク。
これをいかに上手く配置するかが、ブログのページ作成の重要な課題だと、僕は思うのですよ。
以下、サイト内関連ページ
■MTのPHP化とページ分割
■あなたのmovabletype、重たくないですか?(テンプレートモジュール化)
※このサイトはさくらインターネットのサーバを利用しています。
■gi(ギィー)福岡浄水通りの絣(かすり)と手作り雑貨のセレクトショップ
↑サイト内紹介記事
【PR】BTOパソコンの先駆者 FRONTIER
■トラックバックスパムフィルター「BanNoReferTb」は凄いです
■FeedBurner.jpが開始するらしいのでその前に使ってみた
■サイト内で迷った時はランダムピックアップで
■新手のblogランキング「feed meter」はオススメです
概要 : タイトルが長くなってしまいましたが個別記事のページにその記事と同じカテゴリーの最...
日付 : 2004.11.17
概要 : エントリと同じカテゴリの最新記事を、エントリごとに表記しようという試み。 caramel*vanillaのlomoさんがやっていたのを見て私も実行! caram...
日付 : 2004.11.18
概要 : ■Individual archivesでそのカテゴリの最新記事一覧を表示させる方法。 うちみたいにカテゴリ別にリンクを貼っているサイトだと、個別ページに飛んだ...
日付 : 2004.11.23
概要 : 前々から色々とトライしてどうしても出来なかった事のひとつに、カテゴリーごとの最新記事一覧を表示させる」というのがありました。 今日偶然そんな事が出来るプラグイン...
日付 : 2004.11.28
概要 : MTでサイトつくってたとき、表題のことをやるにはどうしたらいいのかなーとしばらく悩んでたので、メモっときます。 うちはカテゴリ別からアクセスするのがメインの使...
日付 : 2004.12.09
概要 : MTでカテゴリーインデックスを表示したときに、カテゴリーの記事一覧を表示する方法。 いろいろ模索したけど、プラグインを使ってやるのが一番簡単な模様。 くわしくは...
日付 : 2004.12.11
概要 : 個別アーカイブページのサイドバーに「カテゴリの最新記事を一覧表示する」というテク...
日付 : 2005.01.30
概要 : メインインデックスにて全てのカテゴリの最新のエントリ一覧を表示し、またそのカテゴ...
日付 : 2005.02.13
概要 : 時間にして2時間弱。こんなにかかってしまいました・・・(;´Д`)ウウッ… 最...
日付 : 2005.03.08
概要 : 「このカテゴリの最新記事一覧」を表示するプラグイン「MTTagInvoke」 (CROSS...
日付 : 2005.03.31
概要 : MovableTypeには色んなページがある訳で、各々で色んなテンプレートを用い...
日付 : 2005.04.17
概要 : 個別記事にそのカテゴリ(記事の種類ね)の最新記事もいっしょに表示できるようにしま...
日付 : 2005.07.28
概要 : たまに個別エントリーのページ下部に、そのカテゴリーの最新記事が幾つか表示されるブ...
日付 : 2005.08.14
概要 : メルマガ第14号です。...
日付 : 2005.10.31
概要 : 最近あちこちでみかけるMovableTypeのカスタマイズで「関連記事を表示させる」表示方法。 羨ましくてやってみましたが、ただタグを追加するだけではうま...
日付 : 2005.11.18
概要 : 最近あちこちでみかけるMovableTypeのカスタマイズで「関連記事を表示させる」表示方法。 羨ましくてやってみましたが、ただタグを追加するだけではうま...
日付 : 2005.11.18
概要 : このサイトではMovableTypeを使用しているのですが、検索エンジンでひっ...
日付 : 2006.01.04
概要 : 他の人のBlogを見てると、個別エントリーの下に『同カテゴリの最新記事』みたいな感じで、そのエントリーと同じカテゴリの最新記事を何個か載せてるところがありまして...
日付 : 2006.01.28
概要 : movabletype 関連記事を表示する方法、movabletypeのカスタマイズ
日付 : 2006.03.22
概要 : 仕事で使いそうなMTのプラグインをメモってみる。 複数のサイズのサムネイルをいっ...
日付 : 2006.07.11
概要 : Movabletype3.31で、3.3で生じていた数々の問題も解決されたのです...
日付 : 2006.07.13
概要 : 遅ればせながらMT3.3をインストールしてみました。 結構前にリリースされたのは...
日付 : 2006.07.30
概要 : 1) ・MT3.2の頃に、エントリ/カテゴリ・テンプレートで、設定していたタグ(...
日付 : 2006.09.25
概要 : よく考えてみると、すべての一覧項目には表示数の制限をかけている。 とすると投稿が...
日付 : 2023.06.23
なるほど・・・MTEntriesの要素に変数を使えると言うのはかなり便利ですね・・・今度使ってみることにします。紹介ありがとうございます。
ちなみに個別記事において、「このカテゴリの前後の記事」を表示するプラグイン「PreviousNextInCategory」なんてものもあります。
もうご存知でしたら申し訳ありませんが、ご参考までにどうぞ。
続編モノの記事を個別ページで順番に読ませたいときなど便利ですよ!
>NEC花子さん
「このカテゴリの前後の記事」は使ってみたかったのですが、ウチでそれやってしまうとごちゃごちゃになりすぎてしまいそうで(笑
確かに続編モノには良さそうですねえ。あとは配置の問題ですね。
情報いつもありがとです!
Posted by: 管理人ayu at 2004年11月18日 22:59ずばり
>続編モノの記事を個別ページで順番に読ませたいとき
これなんですが、
MTTagInvokeで個別ページ(Indivisual archives)の属するカテゴリの一覧を抜き出せたまではいけましたが、
sort_order="ascend"を使っても古い順になりません。
具体的には
100
">
こうしているのですが、新しい順に表示されてしまいます(ちなみに、上のURLとは別のサイトです。)
どうすればいいのか分かりません。助けてください。助けてください。
あ、消えてる。こうです。。。<MTTagContent sort_order="ascend">
Posted by: tony_and_c at 2005年02月04日 21:22>tony_and_cさん
それはPreviousNextInCategoryのことじゃないでしょうか?
ページ毎に順番を変えるのとはちょっと違うかと思います。
PreviousNextInCategoryは「前後のエントリー」の場合ですよね。
じゃなくて、
1/2同一カテゴリの記事
1/3同一カテゴリの記事
1/4同一カテゴリの記事
1/5同一カテゴリの記事
ってな感じにしたいんです。
MTTagInvokeを入れただけでは
1/5同一カテゴリの記事
1/4同一カテゴリの記事
1/3同一カテゴリの記事
1/2同一カテゴリの記事
になって「ネタばれ」してしまい困ってます。
はじめまして。
こちらの記事を参考にさせていただいて、導入することができたのですが
新しいエントリを投稿した場合、その記事だけはいいのですが
同じカテゴリの他の個別記事は、再構築しないと新しいエントリが反映されません。
これは私の設定ミスなのでしょうか。
それともそういうものなのでしょうか。
同一カテゴリの個別ページをまとめて再構築するツールや
自動で再構築するツールがあると便利だと思うのですが
検索してもなかなか探しあてられません。
もしご存知でしたら教えていただけないでしょうか。
どうぞよろしくお願いします。
どうも。
助かりました。
個別ページにカテゴリ一覧表示したかったので、、、
とりあえず、お礼まで。
Posted by: あか at 2005年06月01日 00:00本当に助かりました!自分では3冊のMTの本を見ながら、1日中試行錯誤しても跳ね返され続けた壁だったのですが、プラグインであっさり解決しました!重ね重ねになりますが、ありがとうございました!
Posted by: kujira at 2005年09月12日 23:07はじめまして。
このプラグインは便利ですね。
どうやってやるのか、自分でタグをいじったりして出来ないなぁと思ってた所に、調べたらあっさり答えがありました(笑)。
どうもありがとうございました。
Posted by: HIRO at 2006年01月28日 17:50おー!解決しました。ありがとう!
書籍で、そのプラグイン知って試してみたけど、エラーで・・・。
まさか、I だったとは・・・l (エル)と打ってました(苦笑)。冷静に前後を見ることは大切ですね(しみじみ)
tony_and_cさんへ
<MTTagInvoke tag_name="MTEntries"sort_order="ascend">←半角に直してください。
にすると実現できますよ。おそらくtony_and_cさんの言いたいことはこういうことだと・・・。
これこれ!これがやりたかったのです私!
ほんとーにありがとうございました。って、今からやって見ます。
私はページの上部にこちらのサイトのようなタブインデックスを作りたいと思ってこの機能を調べていました。
このページのタブインデックス、とってもステキですね。コード、教えてくださぁい。
また、やって見て、ご報告に来ますね。
それと、リンク貼らせてください。
はてなアンテナに追加