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を利用して簡単に取得可能です。 テンプレートに渡す場合、次のようなコードでポイント数を取得し、テンプレートに渡してやればページに表示す...
Twig内で文字列の一部分を切り出す方法 Slice使用... twigテンプレート内で文字列の一部を切り出したい時があります。 そんな時はsliceフィルタを使用してtwig内だけで切り出しを実行することが可能です。 2文字目以降を切り出す(1文字目を削除) sliceフィルタの第1引数は開始位置です。 sliceフィルタにはシンタックスシ...
基本税率を切り捨て、切り上げ、四捨五入に変更... 開発メンバー全員のルールを揃えておくことが重要です。 dtb_tax_ruleテーブルのcalc_ruleの設定値は次の表の通りです。 calc_rule 方式 1 四捨五入 2 切り捨て 3 切り上げ これをマイグレーションで...
新しくテーブルを作ってエンティティと関連づける方法... 今回は非常に要望が多かった新しいテーブルを作ってエンティティとしてデータ取得をできるようにする方法をご紹介します。 この方法は3系のもので、まもなくリリースされるEC-CUBE4系では利用できませんのでご注意ください。 データベースの作成 ドクトリン定義ファイルの作成(dcm....