SearchContentsプラグイン(その2・フィールドの値で検索)

SearchContentsプラグインでは、複数の条件を組み合わせて、コンテンツデータを検索することができます。
最も基本的な検索として、「フィールドの値が○○である(○○ではない)」という条件で検索する方法を紹介します。

1.MTSearchContentValuesタグ

「フィールドの値が○○である」という条件で検索する場合は、「MTSearchContentValues」というタグを使います。
content_fieldモディファイアで、検索対象のコンテンツフィールドの名前(またはIDかユニークID)を指定します。
また、valuesモディファイアで、検索対象の値を指定します。

例えば、「商品」というコンテンツタイプを定義していて、そこに「色」というコンテンツフィールドがあるとします。
ここで、「色」コンテンツフィールドの値が「赤」のコンテンツデータを検索したい場合だと、テンプレートを以下のように書きます。

<mt:SearchContents content_type="商品">
  <$mt:SearchContentValues content_field="色" values="赤"$>
</mt:SearchContents>

複数の値のどれかであることを条件にすることもできます。
その場合、valuesモディファイアに、それぞれの値をコンマで区切って指定します。

例えば、前述の例で、「色」コンテンツフィールドの値が「赤」か「青」のコンテンツデータを検索したいとします。
この場合、テンプレートを以下のように書きます。

<mt:SearchContents content_type="商品">
  <$mt:SearchContentValues content_field="色" values="赤","青"$>
</mt:SearchContents>

2.MTSearchContentNotValuesタグ

「フィールドの値が○○ではない」という条件で検索する場合は、「MTSearchContentNotValues」というタグを使います。
MTSearchContentValuesタグと同様に、content_fieldモディファイアとvaluesモディファイアで、対象のコンテンツフィールドと値を指定します。
valuesモディファイアに複数の値を指定した場合は、それらの値のどれでもないコンテンツデータが検索されます。

例えば、「色」コンテンツフィールドの値が「赤」ではないコンテンツデータを検索したい場合だと、テンプレートを以下のように書きます。

<mt:SearchContents content_type="商品">
  <$mt:SearchContentNotValues content_field="色" values="赤"$>
</mt:SearchContents>

また、「色」コンテンツフィールドの値が「赤」と「青」のどちらでもないコンテンツデータを検索したいとします。
この場合、テンプレートを以下のように書きます。

<mt:SearchContents content_type="商品">
  <$mt:SearchContentNotValues content_field="色" values="赤","青"$>
</mt:SearchContents>

3.SearchContentsプラグイン関係の記事の一覧

MT Cloud Starter Kit
Movable Typeのプラグイン集「MT Cloud Starter Kit」をぜひご利用ください