の検索結果 :

×

会員登録 お問い合わせ

WordPress 用のカスタムログインコードを使用して Cognito でユーザーを認証します


問題提起

カスタムコードを使用して、Cognito User Pool for WordPressでWordPressのログインとユーザー登録を処理します。

カスタムフォームプラグインには制限があり、ログインフォームや登録フォームの設計、フォーム送信イベントの処理、Cognito認証情報によるユーザー認証のためのバックエンドフローの管理など、独自のコードが必要になる場合があります。このような場合、カスタムコードを記述できる機能は非常に役立ちます。独自のコードを作成することで、フォームの設計と認証機能を完全に制御できます。

WordPressのカスタムログインコードを使用して、Cognitoでユーザー認証を行う方法は?

このような状況に直面した場合、WordPress 用 Cognito 統合は、バックエンド コード内で Cognito 認証情報を使用した WordPress ログインと Cognito プールへのユーザー登録を組み込むための貴重なソリューションとなります。WordPress 用 Cognito インテグレーターを使用するには、まず以下のものをインストールしてください。 WordPress 用 OAuth クライアントプラグイン あなたのウェブサイトで。 についてもっと知る OAuthクライアントプラグイン.

これを実現するには、プラグインが提供する適切なログインおよび登録機能をコード内で呼び出し、必要なパラメータを渡すだけです。残りの処理は、WordPress用Cognito統合機能が自動的に行います。

以下に、お客様側でコードを実装し、WordPress 用 Cognito 統合に効果的に制御を委譲し、必要な情報を提供するための手順を示すコードスニペットを示します。

1. ログイン機能

入力されたメールアドレス/ユーザー名とパスワードを取得し、それらをサニタイズおよびエスケープ処理した後、関数への引数として渡します。 mo_ci_custom_login_form()

関数定義:

$username Cognito プールがユーザー名とパスワードによるログイン、またはメールアドレスとパスワードによるログインのどちらに設定されているかによって、ユーザー名またはメールアドレスが表示されます。
$password ユーザーが入力したプレーンテキストのパスワード。
$return_user trueの場合、関数はユーザーIDを返すため、ユーザーのログインCookieを明示的に設定する必要があります。falseの場合、Cognitoインテグレーター自体がユーザーをログインさせます。
$result WP_User オブジェクトまたはエラー文字列。

コードスニペット:

<?php
    // Your Code
    // Fetch the input values after the form is submitted
    // Code to sanitize the input values

    $return_user = false; // you want the user login session created by the miniOrange plugin and further handling

    $result = mo_ci_custom_login_form($username, $password, $return_user);

    if(!empty($result)){
        // Your custom code for displaying the error messages
    }
  ?>

2. 登録の流れ

登録フォームに入力された情報を取得し、情報をサニタイズおよびエスケープ処理した後、指定された形式に従ってサニタイズおよびエスケープ処理済みの情報を配列に格納します。

$user_data = array(
    "user_pass" => $password_entered,
    "user_login" => $username_entered,
    "user_email" => $email,
    "display_name" => $display_name, // you can pass username or email as well
    "nickname" => $nickname, // you can pass username or email as well
    "first_name" => $firstname,
    "last_name" => $lastname,
    "user_registered" => $registered_date,
    "role" => $wp_role,
    "meta_input" => $meta_data,
  )
  

基本的なWordPressユーザープロファイル属性以外の追加情報は、 $meta_dataこれは、配列キーがWordPressメタキー、値が入力された値となる連想配列になります。以下はその形式です。 $meta_data

$meta_data = array(
    "<- your-wp_meta_key_for_city_name ->" => $city_name,
    "<- your-wp_meta_key_for_acc_no ->" => $account_number,
    // ...
  );
  

完全に合格する $user_data 関数の引数としての配列 mo_ci_custom_registeration_form()

関数定義:

function mo_ci_custom_registeration_form ($user_data, $return_user=false){
    return $result;
  }
  
$username Cognito プールがユーザー名とパスワードによるログイン、またはメールアドレスとパスワードによるログインのどちらに設定されているかによって、ユーザー名またはメールアドレスが表示されます。
$password ユーザーが入力したプレーンテキストのパスワード。
$return_user trueの場合、関数はユーザーオブジェクトを返し、ユーザーのログインクッキーを明示的に設定する必要があります。falseの場合、Cognitoインテグレーター自体がユーザーをログインさせます。
$result WP_User オブジェクトまたはエラー文字列。

コードスニペット:

<?php
    // Your Code
    // Fetch the input values after the form is submitted
    // Code to sanitize the input values

    $return_user = false; // you want the user login session created by the miniOrange plugin and further handling

    $result = mo_ci_custom_registeration_form($user_data, $return_user);

    if(!empty($result)){
        // Your custom code for displaying the error messages
    }
  ?>

Cognitoの追加ユースケースがサポートされます

Cognito ユーザープール統合によるシームレスなユーザー管理
もっと詳しく知る
WordPress 用 Cognito 統合を使用して、ユーザーメンバーシップを Cognito プールに同期する
もっと詳しく知る
Cognito 資格情報とカスタム フォームを使用してサイトにアクセスする
もっと詳しく知る
WooCommerce チェックアウトで Cognito OTP 経由でユーザーを登録および確認する
もっと詳しく知る
既存のユーザーを WordPress から Cognito ユーザープールに同期する
もっと詳しく知る
AWS Cognito SSO と WordPress および Woocommerce とのユーザー同期
AWS Cognito シングルサインオン (SSO) の使用例
もっと詳しく知る

その他のリソース



お試しください Free デモ








 ご回答ありがとうございます。追ってご連絡いたします。

何か問題が発生しました。 もう一度質問を送信してください

miniOrange がどのように役立つかをご覧ください
デモにサインアップして受け取る


  プラグインのプレミアム機能の概要

  アドオンとサードパーティ統合のテスト

  メールとZoom通話による24時間7日のサポート

  開発者からガイド付きデモを入手する

お困りですか?

メールでお問い合わせください oauthsupport@xecurify.com お客様の要件に関する迅速なガイダンス(電子メール/会議経由)が必要です。当社のチームは、お客様の要件に応じて最適なソリューション/プランの選択をお手伝いします。

こんにちは!

助けが必要? 私たちはここにいます!

対応