バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

 > プラグイン > ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか?

プラグイン

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
468
投稿日時: 2016/12/10 15:29
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか?
こんにちは。
ECCUBEのプラグインの仕様では、
デフォルトで存在するTypeクラスの一部のみを差し替えるという事は出来ないのではないかと思います。

今回の例では、ShippingItemType.phpをオーバーライドした新しいTypeクラスをプラグイン内に作り、
個別フックポイントで$builderの中身を差し替えるといった処理をする必要があるように思われます。

実現されたい事は購入画面にて選択できる配送業者の選択肢を条件によって切り替えたいという事かと予想しておりますが、
その場合は、/src/Eccube/Controller/ShoppingController.phpの中で、以下の記述をされているところが7つ見つかると思います。
// form作成
$builder = $app['eccube.service.shopping']->getShippingFormBuilder($Order);


ちょうどその記述の直後に
画面初期表示時の個別フックポイントがあります。
例)購入画面の場合、128行付近
$event = new EventArgs(
        array(
            'builder' => $builder,
            'Order' => $Order,
        ),
        $request
    );
$app['eccube.event.dispatcher']->dispatch(EccubeEvents::FRONT_SHOPPING_INDEX_INITIALIZE, $event);

ここでプラグイン側に$builderを渡していますので、
プラグイン側の処理で$builderを自分の用意したTypeクラスを利用した結果で上書きすれば良いのではないかと思います。

$builderの中身の作り方は/src/Eccube/Service/ShoppingService.phpのgetShippingFormBuilder()の中身を参照すればいいかと思います。
幸い、プラグイン側に$Orderも一緒に渡されているようですので、
同じように記述できると思います。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか? MPV 2016/12/9 12:26
     Re: ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか? MPV 2016/12/9 23:32
     » Re: ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか? 468 2016/12/10 15:29
         Re: ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか? MPV 2016/12/11 14:45
           Re: ShippingItemType.phpの処理を変更するプラグインが作成したいのですが、お教え頂けないでしょうか? 468 2016/12/12 21:45

 



ログイン


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

統計情報

総メンバー数は90,344名です
総投稿数は110,365件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1693
8
red
1571
9
mcontact
1360
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.