バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

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

開発について

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
k_i
投稿日時: 2019/6/14 18:08
対応状況: −−−
半人前
登録日: 2019/5/21
居住地: 南国
投稿: 13
実装方法のご相談_商品詳細画面を表示させたときに特定条件で在庫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ペイメント

ec-cube.co

統計情報

総メンバー数は50,992名です
総投稿数は93,510件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
1984
4
468
1858
5
yuh
1604
6
red
1353
7
umebius
1296
8
h_tanaka
924
9
fukap
907
10
tsuji
856
11
shutta
835
12 ramrun 789
13
tao_s
774
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

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

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