안녕하세요.
혹시 네이버 소셜API (네아로)를 통해서 회원가입을 하고, 생년월일 정보를 입력받아
상점 접근시 연령에 제한을 두는것이 가능한지 여쭙고자 합니다.
안녕하세요~^^
코스모스팜 회원관리 플러그인에서 네이버 소셜 로그인 시 생년월일 정보를 받아오려면
우선, 네이버 쪽 소셜 로그인 설정에서 연령대를 받아올 수 있도록 설정하신 후
네이버 쪽에 검수를 받으셔야 합니다.
네이버에서 제공하는 가이드를 참고해보세요.
https://developers.naver.com/products/login/userguide/
https://developers.naver.com/docs/login/devguide/#3-1-4-사전-검수-요청
네이버 소셜 로그인 설정 방법은
아래의 링크를 참고해보세요.
검수가 완료되었다면
워드프레스 관리자 -> 외모(테마 디자인) -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 활용해보세요.
add_action('cosmosfarm_members_user_social_register', 'my_cosmosfarm_members_user_social_register', 10, 2);
function my_cosmosfarm_members_user_social_register($user_id, $social_login){
if(isset($social_login->raw_data->age)){
if($social_login->raw_data->age == '20-29'){
$user = new WP_User($user_id);
$user->remove_role('subscriber');
$user->add_role('contributor');
}
}
}
위의 코드는 워드프레스 기본 역할(Role) 설정이 구독자로 되어 있을 때 정상적으로 동작합니다.
기본 역할 설정은 워드프레스 관리자 -> 설정 -> 일반 페이지에서 변경할 수 있습니다.
연령대가 20대라면 소셜 로그인으로 회원가입 시 역할을 구독자에서 기여자로 변경합니다.
마지막으로 상점 페이지를 특정 역할만 볼 수 있도록 페이지 제한 설정을 해보세요.
페이지 제한 설정은 아래의 링크들을 참고해보시겠어요?
고맙습니다.