movabletype.jp
検索

"Movable Type Recipes" でノウハウをシェアしよう

Movable Type Recipes とは

"Movable Type Recipes" (Movable Type レシピ) とは、 GitHub 上でまとめられている、Movable Type のコードサンプル集です。Movable Typeのノウハウをユーザーみんなで共有するために開設しました。今年からシックス・アパートで働いているプロダクトマネージャー、Charlie が中心となって進めています。

(Charlie については、シックス・アパートブログ 「行動力のありすぎるアメリカ人、チャーリーがシックス・アパートに入社しました」 をご覧ください)

レシピの一部をご紹介

ここに集められているレシピには

など、ちょっとユニークなレシピが含まれています。

今回は、「カスタムフィールドの複数の値にマッチした記事をリスト出力する」というレシピをご紹介しましょう。

<mt:SetVarTemplate name="id_collector">
  <$mt:EntryID setvar="entry_id"$>
  <mt:SetVarBlock name="entry_ids{$entry_id}"><$mt:EntryDate format="%Y%m%d%H%M%S"$></mt:SetVarBlock>
</mt:SetVarTemplate>
<mt:Entries limit="20" field:my_field_a="Nelson">
  <$mt:Var name="id_collector"$>
</mt:Entries>
<mt:Entries limit="20" field:my_field_a="David">
  <$mt:Var name="id_collector"$>
</mt:Entries>
<mt:Entries limit="20" field:my_field_a="Melody">
  <$mt:Var name="id_collector"$>
</mt:Entries>

<mt:Loop name="entry_ids" sort_by="value reverse">
  <mt:Entries id="$__key__">
    <!-- output -->
  </mt:Entries>
</mt:Loop>

MTEntries からカスタムフィールドの値で記事を抽出する場合、「field:foo」などのように記述してリスト化を行います。この場合、カスタムフィールドの値が「foo」の記事のみ抽出を行います。

このレシピでは、カスタムフィールドに登録された複数の値で記事を抽出し、リスト表示を行っています。サンプルコードでは、「my_filed_a」というカスタムフィールドの値が、「Nelson」「David」「Melody」の3種類にマッチする記事をリスト表示します。

なるほど、こんな方法もあるのですね!

皆さんの投稿をお待ちしています

Movable Type Recipes は MIT ライセンスを適用しており、GitHub で公開しています。自由に Fork してご利用いただいて OK です。

また、皆さまが開発した、MT タグのレシピも募集しています。日本の MT ユーザーが作った MT タグのノウハウを、世界中でシェアしませんか?

投稿は以下の2つの方法で受け付けています。投稿の際は、日本語でいただいてもOKです!

  • Movable Type Recipes のレポジトリをフォークして、Pullリクエストを送る
  • Movable Type Recipes のレポジトリにある issue システムを利用して、サンプルコードを投稿する (Markdown 形式推奨)

※投稿いただいたレシピは、MIT ライセンスを適用の上、GitHub 上でシェアを行います。投稿の際は、MIT ライセンスで公開することに同意ください。

たくさんの投稿をお待ちしています!

シェアする

  • このエントリーをはてなブックマークに追加

トラックバック