バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

プラグイン > 開発について > 実装方法のご相談_商品詳細画面を表示させたときに特定条件で在庫0にしてカートボタンを無効化させたい

開発について

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
k_i
投稿日時: 2019/6/14 18:08
対応状況: −−−
半人前
登録日: 2019/5/21
居住地: 南国
投稿: 16
実装方法のご相談_商品詳細画面を表示させたときに特定条件で在庫0にしてカートボタンを無効化させたい
▼テンプレート
[EC-CUBE] 4.0.2
[環境] ローカル開発環境

いつもお世話になっております。
技術的に可能なのか、それとも別の実装方法をしたほうが良いのかアドバイスを頂けますと幸いです。

★やりたいこと
特定条件(会員のステータス等)で商品を在庫0とみなしてカートボタンを無効化にしたいです。

★やろうとしていること
EccubeEvents::FRONT_PRODUCT_DETAIL_INITIALIZE のイベント発生時に、
この商品は在庫が0という状態を作りたいです。

Product/detail.twig では、商品の在庫があるかどうかでカートボタンを出し分けていますので、
Product.stock_find が false になると良いのかと思っております。

{% if Product.stock_find %}

カートに入れる
{% else %}

ただいま品切れ中です
{% endif %}

しかしながら、
\Eccube\Entity\ProductはgetStockFindはあるもののsetStockFindなどはないので、
Productの状態を書き換えることができずお手上げ状態であります…。
なにか良い方法はありますでしょうか。


★個人的代替案
商品詳細画面のテンプレートイベントで、{% if Product.stock_find %} という文字列を {% if false %} に置き換えるようなテンプレート書き換えをすればできそうです。

しかし、プラグインとした場合に商品詳細画面のテンプレートをガッツリいじっているサイトの場合にテンプレートの書き換えが正しく行うことができずにプラグインとして機能しなくなるのではっと。。。

この代替案でするしか無いでしょうか。
なにか良い方法ご存知でしたらご教示よろしくお願いいたします。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
 » 実装方法のご相談_商品詳細画面を表示させたときに特定条件で在庫0にしてカートボタンを無効化させたい k_i 2019/6/14 18:08
     Re: 実装方法のご相談_商品詳細画面を表示させたときに特定条件で在庫0にしてカートボタンを無効化させたい tao_s 2019/6/14 23:08
       Re: 実装方法のご相談_商品詳細画面を表示させたときに特定条件で在庫0にしてカートボタンを無効化させたい k_i 2019/6/15 23:08

 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
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.