ECサイトでは商品があるカテゴリーに含まれるかどうかチェックして、ページごとに情報を変えるというカスタマイズを良く行います。

EC-CUBE3ではとても簡単に実現できるので、よくある確認方法をご紹介します。

Twig内だけで完結することもできるのですが、より使い回しが効くEntityにメソッドを追加の方法をとります。

src/Eccube/Entity/Product.phpにメソッド追加

 

上記メソッドを追加したことにより、Twigテンプレート内やコントローラで簡単にカテゴリーのチェックを行うことができます。

例えば商品詳細ページでは以下のように書くことが可能になります。

app/template/default/Product/detail.twig

 

実際にはあまりTwig内でカテゴリー名を使ってチェックすることはおすすめしませんが・・・。

理由はカテゴリー名は頻繁に修正が入ることと、データベースへの余分な問い合わせが発生する可能性があるためです。

カテゴリーIDは管理画面や商品一覧ページのURLで確認することができます。

EC-CUBE3をご利用の方はぜひお試しください。

 

 

関連するカスタマイズ

ポイントプラグインのポイント数を自前で取得... EC-CUBE3のポイントプラグインでは、ポイント数はplg_point_customerデータベースに保存されています。 このデータはレポジトリ$appを利用して簡単に取得可能です。 テンプレートに渡す場合、次のようなコードでポイント数を取得し、テンプレートに渡してやればページに表示す...
「入力されていません。」というメッセージを変更する方法... 「入力されていません。」というメッセージはテキストフィールドでは良いのですが、セレクトボックスだと日本語としておかしいと思います。 そこで商品詳細ページの規格選択を例に、「入力されていません。」を「選択されていません。」に変更してみます。 「入力されていません。」というエラーはAss...
2つの受注状況 mtb_customer_order_statusとmtb_order_status... EC-CUBEにはmtb_customer_order_statusというテーブルが存在するのをご存知でしょうか? mtb_order_statusというマスターテーブルがありこちらが管理画面で表示される受注状況(ステータス)の一覧となっているのは周知の事実だと思いますが、mtb_customer_...
管理画面のパスワードを忘れた時に暗号化されたパスワードでログインする... パスワードを忘れた場合にパスワードなしで管理画面にアクセスする方法を以前ご紹介しましたが、今回はデータベースに保存されている暗号化されたパスワードでログインする方法をご紹介します。 まず、phpMyAdminなどを利用してdtb_memberテーブルに保存されている暗号化されたパスワードを確認...