검색 결과 :

×

WordPress용 사용자 지정 로그인 코드를 사용하여 Cognito로 사용자를 인증하세요.


문제 정책

사용자 정의 코드를 통해 Cognito WordPress 사용자 풀에서 WordPress 로그인 및 사용자 등록을 처리하세요.

사용자 정의 폼 플러그인에 제한 사항이 있어 로그인 및 회원가입 폼을 디자인하고, 폼 제출 이벤트를 처리하고, Cognito 자격 증명을 통해 사용자를 인증하는 백엔드 흐름을 관리하기 위해 자체 코드가 필요한 경우가 있을 수 있습니다. 이러한 경우 사용자 정의 코드를 작성할 수 있는 기능이 유용할 수 있습니다. 자체 코드를 작성하면 폼 디자인과 인증 기능을 완벽하게 제어할 수 있습니다.

WordPress에서 사용자 지정 로그인 코드를 사용하여 Cognito로 사용자를 인증하는 방법은 무엇입니까?

이러한 상황에 직면했을 때, WordPress용 Cognito 통합은 백엔드 코드 내에서 Cognito 자격 증명을 사용한 WordPress 로그인 및 Cognito 풀로의 사용자 등록을 통합하는 데 유용한 솔루션이 됩니다. WordPress용 Cognito 통합 도구를 사용하려면 먼저 다음을 설치해야 합니다. 워드프레스용 OAuth 클라이언트 플러그인 귀하의 웹사이트에서. 자세히 알아보기 OAuth 클라이언트 플러그인.

이를 위해 플러그인에서 제공하는 로그인 및 회원가입 기능을 코드 내에서 호출하고 필요한 매개변수를 전달하기만 하면 됩니다. Cognito WordPress 통합 기능이 나머지 작업을 처리해 드립니다.

다음은 사용자가 직접 코드를 구현하여 Cognito WordPress 통합 기능에 제어권을 효과적으로 넘기고 필요한 정보를 제공하는 데 도움이 되는 코드 스니펫입니다.

1. 로그인 기능

입력된 이메일/사용자 이름과 비밀번호를 가져와서 검증 및 이스케이프 처리를 한 후, 함수 인수로 전달합니다. mo_ci_custom_login_form()

기능 정의:

$username Cognito 풀이 사용자 이름 및 비밀번호 로그인으로 구성되어 있는지 또는 이메일 및 비밀번호 로그인으로 구성되어 있는지에 따라 사용자의 사용자 이름 또는 이메일 주소가 표시됩니다.
$password 사용자가 입력한 일반 텍스트 비밀번호입니다.
$return_user true이면 함수는 사용자 ID를 반환하며, 해당 사용자에 대한 로그인 쿠키를 명시적으로 설정해야 합니다. false이면 Cognito Integrator 자체에서 사용자를 로그인합니다.
$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,
  )
  

기본 워드프레스 사용자 프로필 속성 외의 추가 정보는 모두 그 안에 포함됩니다. $meta_data이는 워드프레스 메타 키를 키로, 입력된 값을 값으로 하는 연관 배열입니다. 아래는 형식입니다. $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 참이면 함수는 사용자 객체를 반환하며, 해당 사용자에 대한 로그인 쿠키를 명시적으로 설정해야 합니다. 거짓이면 Cognito Integrator 자체에서 사용자를 로그인합니다.
$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 Single Sign-On(SSO) 사용 사례
더 알아보기>

추가 자료



시도해보십시오. 무료 Rescale과 함께 비즈니스를 가속화하는 방법에 대해 알아보세요.








 답변 감사합니다. 곧 다시 연락드리겠습니다.

문제가 발생했습니다. 문의사항을 다시 제출해 주세요.

miniOrange가 어떻게 도움이 되는지 알아보세요
데모를 신청하시면 받아보실 수 있습니다


  플러그인의 프리미엄 기능 개요

  추가 기능 및 타사 통합 테스트

  메일 및 Zoom 통화를 통한 24*7 지원

  개발자로부터 안내 데모 받기

도움이 필요하신가요?

메일을 보내주세요 oauthsupport@xecurify.com 귀하의 요구 사항에 대한 빠른 안내(이메일/회의를 통해)를 원하시면 저희 팀이 귀하의 요구 사항에 따라 가장 적합한 솔루션/계획을 선택하도록 도와드릴 것입니다.

안녕하세요!

도움이 필요하다? 우리는 바로 여기에 있습니다!

SUPPORT