バージョン選択

フォーラム

メニュー

オンライン状況

45 人のユーザが現在オンラインです。 (26 人のユーザが フォーラム を参照しています。)
登録ユーザ: 2
ゲスト: 43
h_tanaka Pon-san もっと...

サイト内検索

質問 > フロント機能 > 規格ごとの商品数に関して

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
hirao
投稿日時: 2016/6/23 10:54
対応状況: −−−
半人前
登録日: 2015/9/20
居住地:
投稿: 17
規格ごとの商品数に関して
規格ごとに在庫数を取得して、
商品が売り切れている場合は表示しないか、
○○と○○はSOLD OUTと表示して、リンクを向こうにしたいです。

どなたか規格ごとのSOLD OUTの表示の仕方が分かる方がいればベストなのですが、規格ごとの在庫数の取得方法を知っている方がいれば、教えて頂けると助かります。

例えば
{% for ProductClass in Product.product_classes %}
{{ ProductClass.stockCount |stockCount}}
{% endfor %}
のようなものはないのでしょうか?
DELIGHT
投稿日時: 2016/6/23 11:07
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 571
Re: 規格ごとの商品数に関して
Eccube\Entity\ProductClass\getStockFind()という関数があります。
https://github.com/EC-CUBE/ec-cube/blob/master/src/Eccube/Entity/ProductClass.php#L98

twigなら
{% if ProductClass.stock_find %}{% endif %}


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

hirao
投稿日時: 2016/7/4 17:27
対応状況: −−−
半人前
登録日: 2015/9/20
居住地:
投稿: 17
Re: 規格ごとの商品数に関して
ご返答ありがとうございます。

{% if ProductClass.stock_find %}
{# form_errors(form.classcategory_id1) #}
{% endif %}
といったような事をしてみましたが、
特になにも起こりませんでした。
widget内では何もおこらないのでしょうか?

DELIGHT
投稿日時: 2016/7/4 17:40
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 571
Re: 規格ごとの商品数に関して
{# form_errors(form.classcategory_id1) #}
コメントアウトしてあるのは考慮済みのことでしょうか?



form_errors()はあくまでフォーム送信時のエラー表示です。

{% if ProductClass.stock_find %}
SOLD OUT
{% endif %}
とかではなくてですか?
何がしたいか正確に把握できず、適切な回答ができません。


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

hirao
投稿日時: 2016/7/13 19:53
対応状況: −−−
半人前
登録日: 2015/9/20
居住地:
投稿: 17
Re: 規格ごとの商品数に関して
折角ご返信頂いたのに、
なかなかお礼のメールができずすみません。
また、うまく説明ができず申し訳ありません。

eccube3のproduct detailページで、
widgetを使い{{ form_widget(form.classcategory_id1) }}で
規格のドロップダウンメニューが表示されるかと思います。

そのドロップダウンメニューの中で、
売り切れている規格(例えばサイズや色など)がある場合、
その規格名を非表示にしたいのです。

例えば
S
M
L
という規格で、
Mが売り切れている場合に
S
L
としたいわけです。

すべて売り切れている場合はSOLD OUTが表示できますが、
widgetに対してどうすればいいか悩んでいる訳です
DELIGHT
投稿日時: 2016/7/14 12:27
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 571
Re: 規格ごとの商品数に関して
カート追加フォームの規格1はおよそ下記の順で追うことができます。
https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Controller/ProductController.php#L219
https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Form/Type/AddCartType.php#L105
https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Entity/Product.php#L56



規格2は下記の通りです。
https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Resource/template/default/Product/detail.twig#L28
https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Entity/Product.php#L366



パッと思い浮かぶ方法は2通りあります。

一つはJavascriptでoption要素の表示を切り分ける方法です。
下記の変数をforで確認して適宜option要素を削除します。
https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Resource/template/default/Product/detail.twig#L28

もう一つは、PHP側で対応する方法です。
規格1と規格2を取得している箇所で、在庫がない商品はセットしないようにします。


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

hirao
投稿日時: 2016/7/27 14:33
対応状況: −−−
半人前
登録日: 2015/9/20
居住地:
投稿: 17
Re: 規格ごとの商品数に関して
毎度、ご返信が遅くなり申し訳ございません。
また、ご回答、誠に有り難うございます。
できればPHPでの処理をご教授頂けると助かります。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


ec-cube.co

統計情報

総メンバー数は45,141名です
総投稿数は91,742件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
1894
4
468
1746
5
yuh
1584
6
umebius
1296
7
red
1279
8
fukap
907
9
tsuji
837
10
shutta
827
11 ramrun 789
12
tao_s
745
13
h_tanaka
728
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

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

Copyright© LOCKON CO.,LTD. All Rights Reserved.