バージョン選択

フォーラム

メニュー

オンライン状況

34 人のユーザが現在オンラインです。 (12 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 34
もっと...

サイト内検索

質問 > その他 > 特定の商品のみ商品一覧に非表示にする方法

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
d_taguchi
投稿日時: 2019/10/11 17:38
対応状況: −−−
新米
登録日: 2019/9/25
居住地:
投稿: 5
特定の商品のみ商品一覧に非表示にする方法
▼テンプレート
[EC-CUBE] 4.0.2(新規インストール)

当方、EC-CUBE開発初心者になります。

現在、デフォルトのテンプレートをベースにカスタマイズを行っているのですが、
商品一覧のページで特定の商品のみ非表示させるようソースを組んでおります。
(因みに、商品詳細のページはURL直打ちをすれば表示される仕様で問題ないです。)


現在、app/template/default/Product/list.twig のtwigのソースを編集し、145行目の

{% for Product in pagination %}




{% for Product in pagination if Product.id != 18 %}


にする事で商品のサムネイル部分に商品ID18番の商品を非表示する事が出来ましたが、
「○○件の商品が見つかりました」の総商品数部分が変更されず
非表示にした商品が存在する状態の数で表示されてしまいます。


ここの部分も
「商品ID18番の商品があるとき、総商品数を-1する」
といった簡単なソースで良いのですが、
twigの書き方や、EC-Cubeの構造などまだ理解していない部分が多く、
どのように記述すればよいか分からないでいます。


私の勉強不足による要因ではありますが、
どなたかご教授いただけたら幸いです。

申し訳ありませんが、何卒よろしくお願いいたします。
468
投稿日時: 2019/10/17 11:28
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 1873
Re: 特定の商品のみ商品一覧に非表示にする方法
商品一覧ページにはページネーションの機能があり、
全ページ数を算出するのにデータベースから商品データを取り出す時点で
検索条件に一致した全件の件数も同時に取得しています。

twig上のみで特定の商品を非表示にした場合、
質問になる検索結果の件数だけでなく、
全体のページ数、1ページあたりの表示件数の不整合(1ページ15件表示を選択しているにもかかわらず14件しか表示されない)が発生します。

その為、特定の商品を非表示にしたい場合、
twigで隠すのではなく、php側でデータベースの取得時から除外するようにする必要があります。

直接ソースを変更するのであれば
/src/Eccube/Repository/ProductRepository.php function getQueryBuilderBySearchData()が
フロントの商品抽出処理になります。

本体に手を加えず、リポジトリをカスタマイズする場合は
公式ドキュメントの以下のページのQueryBuilderを拡張する方法で対応できると思います。
http://doc4.ec-cube.net/customize_repository


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

d_taguchi
投稿日時: 2019/10/17 11:59
対応状況: −−−
新米
登録日: 2019/9/25
居住地:
投稿: 5
Re: 特定の商品のみ商品一覧に非表示にする方法
ありがとうございます!
大変参考になりました。

私もtwig側でやるべきではないかなと
薄々感じてはおりました。

ご連絡いただいた内容を参考に
ソースを組んでみたいと思います。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

ec-cube.co

統計情報

総メンバー数は52,551名です
総投稿数は93,818件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
2010
4
468
1873
5
yuh
1610
6
red
1359
7
umebius
1343
8
h_tanaka
932
9
fukap
907
10
tsuji
856
11
shutta
835
12 ramrun 789
13
tao_s
780
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.