デジタルドリームワークスから比嘉です。
先日に前置きで投稿しましたWooCommerce 支払い方法の追加について、プラグインを作る形で支払い方法を追加する必要があると説明しました。
それではさっそくプラグインを作成していきます。
プラグイン作成の作法はWordpress Codexを確認して下さい。
https://wpdocs.osdn.jp/プラグインの作成
またWooCommerceの支払い方法の追加についての詳細は公式ドキュメントから確認出来ます。
https://docs.woothemes.com/document/payment-gateway-api/
それでは実際に作成したコードが以下となります。
公式ドキュメントといくつかのプラグインを参考にさせていただきました!
※コードが画像のため見えにくいです。拡大して確認下さい。
さていくつかコードのメモを…
● 17行目 プラグインのアクション
公式ドキュメントを参考にプラグインが読み込まれたら、クラスを実行するコードを記述。
add_action( ‘plugins_loaded’, ‘init_your_gateway_class’);
ーーーーー
● 26行目〜48行目 コンストラクタ
クラスからオブジェクト作成れた際に自動で実行される部分です。
WooCommerceに必要な変数やメソッドが記述されています。
init_form_fields();
※支払い方法の設定ページで設定する項目が定義されています。
$this->init_settings();
※設定を読み込み
add_action( ‘woocommerce_update_options_payment_gateways_’ . $this->id, array( $this, ‘process_admin_options’ ) );
※支払い方法の設定を更新した際に保存する処理
add_action( ‘woocommerce_thankyou_basicbanktransfer’, array( $this, ‘thankyou_page’ ) );
※注文完了ページで支払い方法別の文章を追加
add_action( ‘woocommerce_email_before_order_table’, array( $this, ‘email_instructions’ ), 10, 3 );
※注文が完了した後に送信されるメールにも支払い方法別の文章を追加
と続きます。
また
ーーーーー
● 111行目〜129行目 注文処理の関連
注文が合った場合のプロセス状態を設定したり、在庫更新、カートを空にしたりする処理。
ーーーーー
● 133行目〜138行目 支払い方法の登録
そして最後にWooCommerceへ支払い方法の登録を行います。
以上が大まかな解説!?メモです。
終わりに…
今回のコードでは1つのプラグインで1つの支払い方法しか追加出来ていません。
2つ、3つとある場合はプラグインを増やしていかなくてはいけないですね。(なんて非効率的…)
またWooCommerceがインストールされていない状況での処理なども記述していません。
そこらへんを改良する必要がありますね。
とりあえずベースのコードは出来ましたので次回より改良していきたいと思います。
またこのコード間違っているよ。
別の方法やコードの記述例などがあればぜひコメントいただきたいです。
よろしくお願い致します。 m(_ _)m
「WooCommerce 支払い方法 追加(その1)」への1件のフィードバック
コメントは停止中です。