バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 在庫数の表示

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yoshisan
投稿日時: 2016/6/21 13:01
対応状況: −−−
常連
登録日: 2016/4/11
居住地:
投稿: 52
在庫数の表示
バージョン3.0.9を使用しております。

商品詳細ページで、商品の在庫数を表示させたいと思っています。
どの様にしたらいいのか分かりません。

・在庫数無制限の商品
・規格設定をした規格毎の商品


上記で、在庫数を表示させたいと考えております。
編集するファイルや箇所など、ご存知の方がいらっしゃいましたら教えて頂ければ幸いです。

よろしくお願い致します。
DELIGHT
投稿日時: 2016/6/21 13:10
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 在庫数の表示
{% for ProductClass in Product.ProductClasses %}
  {{ ProductClass.stock }}
  {{ ProductClass.stock_unlimited }}
{% endfor %}


下記ファイル内に記述されています。
https://github.com/EC-CUBE/ec-cube/blob/3.0.9/src/Eccube/Entity/ProductClass.php


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

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

yoshisan
投稿日時: 2016/6/23 13:05
対応状況: −−−
常連
登録日: 2016/4/11
居住地:
投稿: 52
Re: 在庫数の表示
DELIGHT 様
ご回答ありがとうございます。


編集するファイルは、下記のファイルでよろしいでしょうか?

/src/Eccube/Resource/template/default/Product

■detail.twig


また、教えて頂いたコードは、どこに入れたらよいでしょうか?

商品の個数を選択する上に表示させたい場合は、下記のような感じでよろしいでしょうか?



{# 規格 #}
{% if form.classcategory_id1 is defined %}
<ul id="detail_cart_box__cart_class_category_id" class="classcategory_list">
{# 規格1 #}
<li>
{{ form_widget(form.classcategory_id1) }}
{{ form_errors(form.classcategory_id1) }}
</li>
{# 規格2 #}
{% if form.classcategory_id2 is defined %}
<li>
{{ form_widget(form.classcategory_id2) }}
{{ form_errors(form.classcategory_id2) }}
</li>
{% endif %}
</ul>
{% endif %}


                {% for ProductClass in Product.ProductClasses %}
                {{ ProductClass.stock }}
                {{ ProductClass.stock_unlimited }}
                {% endfor %}


{# 数量 #}
<dl id="detail_cart_box__cart_quantity" class="quantity">
<dt>数量</dt>
<dd>
{{ form_widget(form.quantity) }}
{{ form_errors(form.quantity) }}
</dd>
</dl>



ご教授の程、よろしくお願い致します。

DELIGHT
投稿日時: 2016/6/23 13:25
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 在庫数の表示
それでいいと思います。
本番運用中とかでなければ間違っていても大したことにはなりませんし、手を動かして試しましょう。
(もし本番運用中なら、テスト環境を用意したほうがいいと思いますが)


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

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

yoshisan
投稿日時: 2016/7/8 13:30
対応状況: −−−
常連
登録日: 2016/4/11
居住地:
投稿: 52
Re: 在庫数の表示
DELIGHT様

ご返信遅れまして、申し訳ございません。
上記の様に入れてみたのですが、表示がされませんでした?
何か、他に追加するコードなどもあるのでしょうか?


よろしくお願い致します。
DELIGHT
投稿日時: 2016/7/8 13:37
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 在庫数の表示
キャッシュを読み込んでいる可能性があります。下記ディレクトリ内のファイルを削除して下さい。
/app/cache/twig


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

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

yoshisan
投稿日時: 2016/7/9 2:21
対応状況: −−−
常連
登録日: 2016/4/11
居住地:
投稿: 52
Re: 在庫数の表示
DELIGHT様

ご回答ありがとうございます。
お教え頂いた通り、twigを削除致しましたら、表示することができました。


ですが、在庫数の設定方法で、表示の違いがございました。

●在庫数を「1」に設定した場合
「1 0」と表示され、在庫数の隣に「0」が出てきました。

●在庫数を無制限に設定した場合
在庫数の「1」だけの表示でした。

●規格設定で登録した商品
・在庫数を「1」に設定した場合
「1 0 1 0 1 0 1 0」と、在庫数の隣に「0」が出てきました。

・在庫数を無制限に設定した場合
「1 1 1 1 」と、在庫数の「1」だけの表示でした。



在庫数を「1」に設定した場合に出てきます「0」と表示されるのはなぜでしょうか?


また、この数字の前後に、文言を入れることは可能でしょうか?
特に企画設定をした商品では、数字が並んではいますが、どの在庫なのかが分からないかと思います。

希望としましては、下記の様になります。
例)
16cm 在庫数1  17cm 在庫数2  18cm 在庫数1


ご教授の程、よろしくお願い致します。
DELIGHT
投稿日時: 2016/7/9 3:53
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 在庫数の表示
引用:
・在庫数を「1」に設定した場合
「1 0 1 0 1 0 1 0」と、在庫数の隣に「0」が出てきました。
0は在庫無制限の値です。

引用:
・在庫数を無制限に設定した場合
「1 1 1 1 」と、在庫数の「1」だけの表示でした。
1は在庫無制限の値です。(在庫無制限の時は在庫数はnull)

引用:
また、この数字の前後に、文言を入れることは可能でしょうか?
文言を入れたいところに文言を入れればいいと思います。

詳しい仕組みは省きますが、例えば
引用:
{{ ProductClass.stock_unlimited }}
と書くと、Eccube\Entity\ProductClass::getStockUnlimited()が呼び出され、在庫無制限の値が取得できます。
https://github.com/EC-CUBE/ec-cube/blob/3.0.9/src/Eccube/Entity/ProductClass.php#L320

他のget〜関数も同様ですので、色々書いて試して、ご希望の値を取得して下さい。


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

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

yoshisan
投稿日時: 2016/7/11 17:49
対応状況: −−−
常連
登録日: 2016/4/11
居住地:
投稿: 52
Re: 在庫数の表示
DELIGHT様

ご返信が遅くなりまして、申し訳ございません。
ご回答を頂きまして、ありがとうございます。



引用:
0は在庫無制限の値です。

在庫無制限の値を取得しない、という設定も可能なのでしょうか?
在庫数無制限、在庫数指定を、現在、両方を取得されていると思いますが、管理画面で設定したどちらかを取得する処理も可能でしょうか?
(在庫の設定方法によって、どちらかを表示させる)



引用:
1は在庫無制限の値です。(在庫無制限の時は在庫数はnull)

在庫数を「1」に設定した場合は、在庫無制限の値は、取得されないという認識でよろしいでしょうか?




引用:
文言を入れたいところに文言を入れればいいと思います。

例えば下記の様になりますでしょうか?

例)
 {% for ProductClass in Product.ProductClasses %}
   在庫数 {{ ProductClass.stock }} 個
   16cm 在庫数{{ ProductClass.stock_unlimited }} 個
 {% endfor %}


のような感じでしょうか?
また、規格設定をした商品の場合、上記ですと、
「16cm 在庫数 1個  16cm 在庫数 1個 」
全て「16cm」が入ってしまいそうなイメージなのですが、
それぞれの規格名で分けたい場合はどのようにしたらいいでしょうか?
「16cm 在庫数 1個  17cm 在庫数 1個 」




引き続きご教授の程頂ければ幸いです。
よろしくお願い致します。
DELIGHT
投稿日時: 2016/7/11 18:17
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 在庫数の表示
引用:
在庫無制限の値を取得しない、という設定も可能なのでしょうか?
在庫数無制限、在庫数指定を、現在、両方を取得されていると思いますが、管理画面で設定したどちらかを取得する処理も可能でしょうか?
(在庫の設定方法によって、どちらかを表示させる)

twigのif文を利用して下さい。
http://twig.sensiolabs.org/doc/tags/if.html



引用:
在庫数を「1」に設定した場合は、在庫無制限の値は、取得されないという認識でよろしいでしょうか?

上記の場合は在庫無制限「0」という値が取得されています。



引用:
また、規格設定をした商品の場合、上記ですと、
「16cm 在庫数 1個  16cm 在庫数 1個 」
全て「16cm」が入ってしまいそうなイメージなのですが、
それぞれの規格名で分けたい場合はどのようにしたらいいでしょうか?

EC-CUBE標準のテンプレート内に同様の記述が存在します。
まずはそういった箇所を探して参考にして下さい。
https://github.com/EC-CUBE/ec-cube/blob/3.0.9/src/Eccube/Resource/template/default/Cart/index.twig#L134


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

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

(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.