0

フロントエンドの注文確認が行われたときに、管理者が顧客のために注文するときと同じ方法でテーブルを追加します。ですから、モジュールが置かれた順番にモジュールを実行することができ、または直接注文確認コントローラまたは管理コントローラに置くことができるときに、プリスタショップの起動トリガーにシステムがありますか?OrderConfirmationController.php prestashopの下のページでカスタムモジュールを実行する

可能であれば教えてください。

例 - モジュールを作成しました& OrderConfirmationController.phpを実行または注文したときに新しいテーブルにレコードを追加します。管理者の注文と同じ方法で確認されます。

ありがとうございます。

ありがとうございました。

答えて

0

フックactionValidateOrderを使用するか、PaymentModule :: validateOrderをオーバーライドするか、Order :: addをオーバーライドすることもできます。それはあなたが何をしたいのか、そして必要なデータに依存します。 注文は完了している必要がありますか?注文が完了する前に何かを保存または変更する必要がありますか?また、必要な作業の前後に親機能を使用することもできます。

1

作成したカスタムモジュールでactionValidateOrderフックを使用できます。このフックは、注文が生成されるたびに呼び出されます。

:新しい注文が生成された時はいつでも、それが呼び出されます次のようにフックを登録するために次のコード

使用(内部のインストール()関数)

$this->registerHook('actionValidateOrder'); 

そしてフックする機能を定義しました

public function hookActionValidateOrder($params) 
{ 
    --- YOUR CODE HERE --- 
} 
0

オーダーの作成と編集を追跡するさまざまな方法があります。それはあなたの必要性に完全に依存します。私は、注文管理に関連するいくつかのフックの下で説明しています。

  1. actionObjectOrderAddBefore
    あなたがデータベースに保存する前に、新しい秩序を検証したい場合は、このフックを使用することができます。このフックは、データベースに新しい注文を保存した後に実行されます

  2. actionObjectOrderAddAfter。このフックを使用して、あなたの必要を満たすことができます。

  3. actionObjectOrderUpdateBefore
    このフックは、単に既存の秩序を更新する前に呼び出されます。しかし、このフックは、既存のオーダーのフィールドが更新されるたびに呼び出されるため、このフックを使用することをお勧めしません。
    actionObjectOrderUpdateAfter

  4. このフックは、単にデータベースに順序の任意のフィールドを更新した後に呼び出されます。対応する注文のカスタムテーブルにエントリを作成する場合は、このフックを使用しないでください。

  5. actionValidateOrder
    顧客が新しい注文をするたびにこのフックが実行されます。このフックは注文の作成後に実行されますが、顧客が注文の金額を支払うかどうかを保証するものではないため、支払いの成功に依存しない場合はこのフックを使用できます。

  6. orderConfirmation
    これは、顧客が注文後、注文の詳細を追跡するために最適と推奨フックです。このフックは、データベースへの注文の作成と支払い成功後に呼び出されます。

さらに詳しい情報や質問があれば、私に返信してください。

+0

申し訳ありません。私は解決策を探しています。 actionValidateOrderのトリガーは何ですか?私はそれがPayPalモジュールのためだけに働いていないという問題に直面しています、他の決済ゲートウェイはうまくいます..... – Enthu

+0

あなたは何をしようとしているかについてコードスニペットを共有できますか? – Dhirender

+0

はい、私は投稿を作成しました.....私は、APIを使って配送業者に注文を送りました。 PayPalのみではなく、他の支払いオプションでのみ動作します。私はactionValidateOrderを使用しています。 – Enthu

関連する問題