MTのMTEntriesタグでモディファイア「field」を複数指定してフィルタリングし、記事を表示してみる。【技術情報】14.01.15

MTでカスタムフィールド「チェックボックス」や「ラジオボタン」を作成して、そのフィールド(ベースネーム 「basename」)の「リンゴ」が設定されている記事のみ表示する場合、下記のようにモディファイア「field」を設定します。

<MTEntries field:basename="リンゴ">
  <$mt:EntryTitle$>
</MTEntries>

では複数条件の場合はどうでしょうか?
カスタムフィールド1(ベースネーム「basename1」)には「リンゴ」、カスタムフィールド2(ベースネーム「basename2」)には「みかん」が設定されている記事を表示したい場合、

<MTEntries field:basename1="リンゴ" field:basename2="みかん">
  <$mt:EntryTitle$>
</MTEntries>

では正しく表示できません。

複雑な複数条件で記事を表示させるにはプラグイン(http://www.h-fj.com/blog/mt5plgdoc/searchentries.php)などを使用する方法がありますが今回はプラグインを使わずに対応してみます。
ちょっと強引ですが「MTEntries」を入れ子にして下記のようにすると「リンゴ」と「みかん」が設定されている記事が表示できます。

<MTEntries field:basename1="リンゴ">
  <MTEntries field:basename2="みかん">
    <$mt:EntryTitle$>
  </MTEntries>
</MTEntries>

チェックボックスでの複数条件の場合は同じベースネームを条件の数だけ入れ子にして設定すると対応できると思います。

このような構造にしていると負荷がかかり、おそらく再構築に時間がかかるようになると思いますが、とりあえずプラグインを使用せずに表示できました。

このエントリーをはてなブックマークに追加
「WEBaseとつながろう!」LINEでマーケティング情報を定期的に発信していきます。集客に興味がある方は、友達登録お願い致します。
Contents
お知らせ 一覧
使命は集客、戦略的WEB集客サポート「WEBコンサルティング」
お試しWEBコンサルティング
完全成果報酬型SEO対策「インジーニアスSEO」
戦略的ホームページ制作・リニューアル
「WEBaseとつながろう!」LINEでマーケティング情報を定期的に発信していきます。集客に興味がある方は、友達登録お願い致します。
ページTOPへ