PayPal支払い後のユーザーアカウントの承認

PayPalでの支払い完了後にユーザーを承認したいですか?カスタムPHPスニペットを使用すると、支払い状況に基づいて自動的にユーザーを承認するように登録フォームを変更することができます。

User Registrationアドオンを使用すると、自動または手動の承認でユーザーをサイトに登録させることができます。しかし、もしあなたが会員制サイトを作成していて、PayPalでの支払いが完了するまでユーザーを承認したくない場合、そのための小さなコードスニペットが必要になります。

このガイドでは、WordPressでこの機能を実現するためのカスタムスニペットをご紹介します。


フォームの作成

まず、ユーザー登録フォームを作成する必要があります。この作業でサポートが必要な場合は、こちらのドキュメントをご覧ください

フォームを作成したら、フォームビルダーから設定 " ユーザー登録に進みます。ここで、ユーザー認証を有効にするオプションをオンに切り替えます。

ユーザー起動オプションを有効にする

次に、[User Activation Method] オプションを[Manual Approval]に設定する必要があります。

ユーザーのアクティベーション方法を手動アクティベーションに設定する。

PayPalで会費を徴収できるようにする

次に、フォームに「支払い」フィールドを追加し、会員資格を有効にするための金額を指定します。

フィールドを追加したら、フォームビルダーのPayments " PayPal Standardに移動し、Enable PayPal Standard paymentsオプションをオンに切り替えます。

PayPal標準の支払いを有効にする

その後、PayPalの支払い設定を行うための追加設定が表示されます。PayPal決済の設定についてさらにサポートが必要な場合は、こちらのドキュメントをご覧ください

PayPal IPNの設定

このチュートリアルでは、PayPalのInstant Payment Notification (IPN)を有効にして、PayPalが支払いステータスを返すと、あなたのサイトにメッセージが送信され、スニペットがトリガーされるようにします。

インスタントペイメント通知について詳しくは、PayPalのIPNに関するドキュメントをご覧ください。

支払い完了後にユーザーを承認する

さて、いよいよスニペットを追加して、すべてをまとめましょう。スニペットをサイトに追加する際にヘルプが必要な場合は、こちらのチュートリアルをご覧ください

上記のスニペットはフォームID5でのみ実行されます。このスニペットをすべてのユーザー登録フォームで実行したい場合は、このスニペット内のブロックを削除するか、コメントアウトしてください。

他に知っておく必要があるのは、EmailフィールドのIDだけです。このチュートリアルでは、Emailフォーム・フィールドのフィールドIDは3です。

メールフォームフィールドに使用しているフィールドIDのスニペットを更新する。

注:フィールドまたはフォームIDを見つけるのに助けが必要な場合は、こちらのチュートリアルをご覧ください

ユーザーがフォームを送信する際、支払いステータスが「完了」以外を返した場合、そのユーザーは「未承認」のままになります。

このスニペットは、paypalの支払いが完了したとマークされた後にのみユーザーを承認します。

以上です!これでWPFormsを使用してWordPressで支払い状況に基づいてユーザーの役割を割り当てる方法を学びました。

次に、失敗した PayPal からの支払いをフォームロッカーの設定から除外したいですか?フォームロッカーの設定で失敗した PayPal からの支払いを除外する方法についてはチュートリアルをご覧ください。

参考アクション

wpforms_paypal_standard_process_complete