トップページへ

MTEntriesタグをテンプレートで複数使う時に記事を重複させない方法

小粋空間 » Movable Type » カスタマイズ » エントリー(ブログ記事) » MTEntriesタグをテンプレートで複数使う時に記事を重複させない方法

Movable TypeのMTEntriesタグをテンプレートで複数使う時に記事を重複させない方法を紹介します。

1.はじめに

MTEntriesタグで記事一覧を表示するときに、次のようなことをしたいのですが、2つめの方法がわかりません。

  1. タグ「news」を付与した最新5件の投稿記事の記事タイトルと概要を表示
  2. 上記以外の最新5件を記事タイトルのみ表示

たとえば、

テスト1
テスト2
テスト3
●テスト4
●テスト5
テスト6
●テスト7
●テスト8
テスト9
●テスト10

という10記事が投稿されていて(数字の大きい方が投稿日時が新しい)、●がついているものがタグ「news」が設定されている記事で、他はタグが設定されていない記事です。

タグを付与した最新5件を表示するのは次のテンプレートになります。

<mt:Entries tag="news" lastn="5">
  <$mt:EntryTitle$>
</mt:Entries> 

が、その次のテンプレートの作り方が分かりません。

ということで、MTEntriesタグをテンプレートで複数使う時に記事を重複させない方法を紹介します。

2.記事を重複させずに表示する

記事を重複させずに表示するには、2つめのMTEntiresタグに、次のようにuniqueモディファイアを利用します。

<mt:Entries unique="1" lastn="5">
  <$mt:EntryTitle$>
</mt:Entries> 

または

<mt:Entries unique="1" limit="5">
  <$mt:EntryTitle$>
</mt:Entries> 

uniqueモディファイアは同じテンプレート内で使用したMTEntriesタグで出力したブログ記事を除いて出力してくれます。

以前投稿した「MTEntriesタグで指定した数の記事を除外して表示する方法」ではoffsetモディファイアを使用した例を紹介しました。

offsetタグは単純にスキップする記事数を指定するだけの機能ですが、uniqueモディファイアは今回のサンプルのような複雑な条件で威力を発揮します。

« 前の記事へ

次の記事へ »

トップページへ