コンテンツが変化した時に内容を表示する MovableType プラグイン:MTIfContentsChanged

Posted by
ぴろり
Posted at
2006/05/13 13:47
Trackbacks
関連記事 (0)
Post Comment
コメントできます
Category
プラグイン カテゴリ

 MovableTypeのテンプレートデザインに役立つかも知れない小さなプラグインです。コンテナタグに含まれる内容が変化した時に一度だけその内容を出力します。具体的には全ての記事ページに見られるような、年毎・月毎のヘッダ表示などに使用できます。
 サーバを整理していたら見つけた&以前に公開していなかったので簡単な紹介を。

この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  

追加されるテンプレートタグ

MTIfContentsChanged コンテナタグ
 このコンテナタグに含まれるコンテンツが、直前のものと比べて変化した場合、その内容をそのまま表示します。反対にコンテンツに変化がない場合は何も表示しません。
slot
MTIfContentsChanged を二つ以上の内容について使用したい場合、それらを区別するための名前を指定します。詳細は次節"使い方の例"を参照してください。このパラメータは省略できます。

使い方の例

 具体的にテンプレートタグの書き方を示し、その出力例を見て頂くほうが、言葉で説明するよりも、理解は容易いと思います。では、早速。

年毎・月毎にヘッダを表示する例

<MTEntries lastn="65535">
  <MTIfContentsChanged slot="Year">
    <!--年が変化した場合に一度だけ表示されます-->
    <$MTEntryDate format="%Y"$> 年<br />
  </MTIfContentsChanged>
  <MTIfContentsChanged slot="Month">
    <!--月が変化した場合に一度だけ表示されます。-->
    <!--先の 年(slot="Year") とは別の変化なので slot の指定を忘れないようにします。-->
    - <$MTEntryDate format="%m"$> 月<br />
  </MTIfContentsChanged>
    -- <$MTEntryDate format="%d"$> 日 : <$MTEntryTitle$><br />
</MTEntries>
2004 年
- 6 月
-- 13 日 : 記事タイトル1
-- 22 日 : 記事タイトル2
- 7 月
-- 19 日 : 記事タイトル3
2005 年
- 1 月
-- 31 日 : 記事タイトル4

記事投稿者毎にヘッダを表示する例

<MTEntries lastn="65535" sort_by="author_id">
  <MTIfContentsChanged>
    <h1><$MTEntryAuthor$> の書いた記事</h1>
  </MTIfContentsChanged>
  - <$MTEntryDate format="%Y/%m/%"$> : <$MTEntryTitle$><br />
</MTEntries>
ぴろり の書いた記事
- 2006/01/23 : 記事タイトル1
- 2005/10/03 : 記事タイトル2
- 2005/09/11 : 記事タイトル3
管理人 の書いた記事
- 2005/12/31 : 記事タイトル4

その他

ダウンロード

MTIfContentsChanged  new

ver.0.30, '06/09/21, 0 bytes, MovableType 3.151 で動作確認
  • タグ MTCheckContentChanged, MTIfContentChanged, MTChangedContent を追加

 最新版のダウンロードやバグレポートはIfContentsChanged の trac レポジトリでも行っています。

 ページ下方の Download in other formats → Original Format で取得できます。

この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  



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

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

コメントを投稿する

 
 (必須, 匿名可, 公開, トリップが使えます)
 (必須, 匿名可, 非公開, Gravatar に対応しています)
 (必須)
スパム コメント防止のため「投稿確認」欄に ランダムな数字 CAPTCHAについて を入力してから送信してください。お手数ですがご協力のほど宜しくお願いいたします。