share facebook facebook twitter menu hatena pocket slack

2011.11.14 MON

EC-CUBE Smartyテンプレート内での条件分岐

櫛田 草平

WRITTEN BY 櫛田 草平

現在EC-CUBEをカスタマイズする仕事をしており、ログイン情報などで表示を切り替えたい場合にSmartyテンプレート内で条件文の書き方を備忘がてら記します。

バージョンは2.11.x以降とし、
data/Smarty/templates以下にある拡張子.tplファイルを対象とします。

○店舗側

■顧客がログインしているかどうかで表示の切り替え


※ログイン用の記述

 ※未ログイン用の記述

■(ログイン前提で)男性か女性かで表示の切り替え


※男性用の記述

※女性用の記述

■(ログイン前提で)保持ポイントがnポイント以上かどうかで表示の切り替え


※nポイント以上保持者用の記述

※nポイント未満保持者用の記述

ログイン後はPHPの$_SESSION[‘customer’]内に顧客テーブルdtb_customerのログインされたレコードが連想配列で保存されています。
Smartyテンプレート側では、で値を取得・表示できます。

○管理側

■ログインされたアカウントが『システム管理者』か『店舗オーナー』かで表示の切り替え


※店舗オーナー用の記述

※システム管理者用の記述

管理画面はそもそもログインしないと利用出来ないので、ログインの有無をもって表示の切り替えを行う事自体必要ありません。

ログイン時に以下の項目が$_SESSION内に記述されますので、Smartyテンプレート側では、で表示する事が可能です。

member_id 管理者ID
login_id ログインされたID
login_name 管理者名
authority 権限
last_login 最終ログイン日時

※この記事は、なかの人(piro556)が書いています。

櫛田 草平

櫛田 草平

cloudpackで運用、保守、構築、夜間対応を担当しており、日々様々な課題に対応していますのでこの経験を記事にしていけたらと思います。 櫛田 草平

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。