【Movable Type】IF文不要!カテゴリ毎にレイアウトを変える|Blog|株式会社トライム

Keyword

Contact

についての不明点や案件のご相談などございましたらお気軽にお問い合わせください。

Share

X Facebook pocket LINE はてなブックマーク

【Movable Type】IF文不要!カテゴリ毎にレイアウトを変える

2017.08.24

カテゴリ毎にレイアウトを変える方法

MTでカテゴリ毎に違ったレイアウトにしたい場合、
通常は下記のようなIF文を書くことで対応できます。

IF文で対応

<$mt:EntryCategory setvar="cat"$>
<mt:If name="cat" eq="カテゴリA">
  カテゴリAの内容
<mt:ElseIf eq="カテゴリB">
  カテゴリBの内容
<mt:ElseIf eq="カテゴリC">
  カテゴリCの内容
</mt:If>

しかしそれぞれのレイアウト用のHTMLがずらーっと書かれていると
テンプレートの可読性が下がってしまいます。

そこで考えられるのが各レイアウトをモジュール化することです。

モジュール化

<$mt:EntryCategory setvar="cat"$>
<mt:If name="cat" eq="カテゴリA">
  <$mt:Include module="カテゴリA"$>
<mt:ElseIf eq="カテゴリB">
  <$mt:Include module="カテゴリB"$>
<mt:ElseIf eq="カテゴリC">
  <$mt:Include module="カテゴリC"$>
</mt:If>

ここで気がつくことがひとつ。カテゴリ名とモジュール名が同じです。
ということで下記のようにすると、IF文がなくなりさらにスッキリします。

IF文無し

<$mt:EntryCategory setvar="cat"$>
<$mt:Include module="$cat"$>

わずか2行になりました!
カテゴリ名を変数化して module="$cat" として呼出しています。

カテゴリ名が変更になる恐れがある場合はカテゴリのベースネームで対応することも可能です。

Share

X Facebook pocket LINE はてなブックマーク
Webサイト制作についてお悩みでしたら私たちにご相談ください。

私たちはECサイトなどのBtoCのサイトの制作に特化したWeb制作会社です。マーケティング視点をもったクリエイティブにより、運用まで見据えた効果の高いWebサイトを構築いたします。Webサイトについてお悩みのWeb担当者の方は、トライムまでお気軽にご相談ください。

Keyword

Contact

についての不明点や案件のご相談などございましたらお気軽にお問い合わせください。

Contact

お問い合わせ

トライムは常にお客様へ寄りっ沿った提案をさせていただきます。
自社のEC売上の拡大や人材不足などのお客様のデジタル上の課題を、
様々なアプローチにより解決するお手伝いをいたします!
お気軽にお問い合わせください。

TEL

03-6403-3259

受付:10:00 - 19:00