バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > カテゴリーページの商品をさらにサブカテゴリごとで表示させたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2018/10/18 3:41
対応状況: −−−
カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
その他のスレッドと重複しているのですが
4系でも以下のような出し方は可能でしょうか。
どう出せば良いのか コントローラに命令渡さないとできないのか
twigのみで完結できるのでしょうか。
親カテゴリーページ
親カテゴリタイトル
---------------------
サブカテゴリ1タイトル
---------------------
サブカテゴリ1の商品1
サブカテゴリ1の商品2
サブカテゴリ1の商品3

---------------------
サブカテゴリ2タイトル
---------------------
サブカテゴリ2の商品1
サブカテゴリ2の商品2
サブカテゴリ2の商品3

よろしくお願いします。
468
投稿日時: 2018/10/18 9:39
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
コントローラでサブカテゴリ毎の配列を生成して、
twigに渡す方が良いのではないかと思います。
twigだけでも出来ない事はないかと思いますが、
プログラムの記述が複雑になると思います。
あと、ページネーションはどのように区切られるのでしょうか?
2ページ目は存在しないという事でしょうか?


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

ゲスト
投稿日時: 2018/10/18 11:01
対応状況: −−−
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
ありがとうございます。
>あと、ページネーションはどのように区切られるのでしょうか?
>2ページ目は存在しないという事でしょうか?

ページングがあります。 デフォルトのページングのようにページをめくりたいとなると複雑でしょうか
468
投稿日時: 2018/10/18 17:30
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
1ページ目と2ページ目でどのように内容が変わる想定ですか?
例えば、以下のような商品が登録されている場合、
1ページ15件のページングを行った場合、1ページ目はどの商品が表示されるのでしょうか?

----カテゴリAの商品一覧ページ----

サブカテゴリA----
商品A1
商品A2
商品A3
商品A4
商品A5
商品A6
商品A7
商品A8
商品A9
商品A10
商品A11
商品A12
商品A13
商品A14
商品A15
商品A16
商品A17
商品A18
商品A19
商品A20

サブカテゴリB----
商品B1
商品B2
商品B3
商品B4
商品B5
商品B6
商品B7
商品B8
商品B9
商品B10
商品B11
商品B12
商品B13
商品B14
商品B15
商品B16
商品B17
商品B18
商品B19
商品B20


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

ゲスト
投稿日時: 2018/10/18 17:31
対応状況: −−−
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
既存のControllerを対応させるにはどのようにすればよいのでしょうか。
http://doc4.ec-cube.net/customize_controller
のルーティングを合わせればいけますでしょうか。。

配列を分けてtwigに渡すやり方はこんな感じをのまねればよいですかね

https://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=19480&forum=10&post_id=83756#forumpost83756
ゲスト
投稿日時: 2018/10/19 1:59
対応状況: −−−
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
考えかたが間違えていたらすみません。

サブカテゴリAもサブカテゴリBもそれぞれ15件表示したら
次の15件もそれぞれのサブカテゴリの商品の続きを出したいです。

サブカテゴリを押下すればデフォルト通り絞り込んだ結果があれば良いです。
意図としては
親カテゴリページを見たときに新着記事的な意味合いでサブカテゴリがこれだけある事を見せたいだけのものです。
難しいなら全件か決まった個数並べて置ける仕様でも良い

すみませんが、よろしくお願いします。
468
投稿日時: 2018/10/21 9:07
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
よくあるページングの概念から考えると、非常に難しい事をしようとしていると思います。

ほとんどのページングの処理は、DBからデータを取り出す時に
一旦、データを整理(抽出したら、並び替えたり、グループ化)してから
最後に1~15件目のデータのみ取り出すといった感じで処理していると思います。

その為、サブカテゴリAから1~15件目のデータ、サブカテゴリBから1~15件目のデータといったあるグループごとに件数を指定して取り出したい場合、

1.データの整理(サブカテゴリAで抽出、並び替え)、1~15件目のデータのみ取り出す
2.データの整理(サブカテゴリBで抽出、並び替え)、1~15件目のデータのみ取り出す

と、2回データベースからデータを取り出す必要があります。

上記の処理をコントロール側に記述すれば問題ありませんが、
今、表示しようとしているカテゴリのサブカテゴリすべてに対して、
1~15件(2ページの場合は16~30件)の抽出処理を行うのは、かなり手間がかかる実装になるかと思います。
(そのほか、現在ページの保持や全ページ数の計算等ページナビゲーション用の処理も必要かと思います)

全件表示でも、決まった個数を表示する場合でも上記のような処理の記述は必要かと思います。
あと、トップカテゴリページには直接紐づく商品は存在しないのでしょうか?


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

ゲスト
投稿日時: 2018/10/22 12:56
対応状況: −−−
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい

引用:

468さんは書きました:
よくあるページングの概念から考えると、非常に難しい事をしようとしていると思います。

ほとんどのページングの処理は、DBからデータを取り出す時に
一旦、データを整理(抽出したら、並び替えたり、グループ化)してから
最後に1~15件目のデータのみ取り出すといった感じで処理していると思います。

その為、サブカテゴリAから1~15件目のデータ、サブカテゴリBから1~15件目のデータといったあるグループごとに件数を指定して取り出したい場合、

1.データの整理(サブカテゴリAで抽出、並び替え)、1~15件目のデータのみ取り出す
2.データの整理(サブカテゴリBで抽出、並び替え)、1~15件目のデータのみ取り出す

と、2回データベースからデータを取り出す必要があります。

上記の処理をコントロール側に記述すれば問題ありませんが、
今、表示しようとしているカテゴリのサブカテゴリすべてに対して、
1~15件(2ページの場合は16~30件)の抽出処理を行うのは、かなり手間がかかる実装になるかと思います。
(そのほか、現在ページの保持や全ページ数の計算等ページナビゲーション用の処理も必要かと思います)

全件表示でも、決まった個数を表示する場合でも上記のような処理の記述は必要かと思います。
あと、トップカテゴリページには直接紐づく商品は存在しないのでしょうか?


確認してみます。

思考を変えて
親カテゴリーページを判定させて装飾ってことは
簡単でしょうか
468
投稿日時: 2018/10/23 11:31
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
親カテゴリーというのは1階層目のカテゴリーの事でしょうか?
カテゴリーページ(商品一覧ぺージ)には、Categoryという変数でtwigに
今、表示しているカテゴリを渡していますので、
{{ Category.hierarchy }}で階層のデータを取得できるのではないでしょうか?

ただ、カテゴリーを指定していないキーワード検索の時など、
Categoryがnullになるかと思いますので、以下のような判定は必要かと思います。

{% if Category is not null %}

{% endif %}


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

ゲスト
投稿日時: 2018/11/22 12:59
対応状況: −−−
Re: カテゴリーページの商品をさらにサブカテゴリごとで表示させたい
ページングはあきらめてカテゴリの一覧を回してから
子カテゴリIDとProduct.ProductCategoriesをマッチさせてみましたが
以下のようにしてみたのですが、出ない商品があります。


{% for ChildCategory in Category.children %}
<section class="section02">
<h2 class="productsListTitle03"><a href="{{ url('product_list') }}?category_id={{ ChildCategory.id }}"><svg><use xlink:href="#icon-arrow01"></use></svg>{{ ChildCategory.name }}</a></h2>

<div class="row">
<div class="productsList02 columnFloat columnCount_4 sp_columnCount_2">

{% for Product in pagination %}
{% for hoge in Product.ProductCategories %}
{% if hoge.Category.id== ChildCategory.id %}
{{dump(hoge)}}
<div class="col">
<a href="{{ url('product_detail', {'id': Product.id}) }}">
<figure><img src="{{ asset(Product.main_list_image|no_image_product, 'save_image') }}" alt="{{ Product.name }}"></figure>
<h3>{{ Product.name }}</h3>
</a>
</div>
{% endif %}
{% endfor %}
{% endfor %}
</div>
</div>
</section>
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,697名です
総投稿数は109,943件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1283
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

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

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