안녕하세요,
네이버, 카카오톡 간편로그인 시에는 회원관리 플러그인에 똑같이 사용자가 추가되는데 ,
회원가입 안내 sms 자동발신은 되지 않습니다,,,!
어느 부분을 수정하면 좋을까요?
안녕하세요~^^
코스모스팜 회원관리 플러그인에서 회원가입 시
네이버, 카카오로 소셜 로그인할 경우 해당 소셜에서
휴대폰 정보를 보내주지 않기 때문에 SMS 전송이 어렵습니다.
cosmosfarm_members_user_social_register 액션을 활용하시면
소셜 로그인으로 사용자가 회원가입한 후 새로운 코드를 추가하고 실행하게 하실 수 있습니다.
cosmosfarm_members_user_social_register 액션 사용법은
아래와 같습니다.
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){
// 이곳에 코드를 추가해보세요.
}
메일을 받아올 수 있다면
wp_mail 함수로 메일을 보내실 수 있습니다.
wp_mail 함수에 대한 자세한 내용은
아래의 링크를 참고해보세요.
https://developer.wordpress.org/reference/functions/wp_mail/
고맙습니다.
휴대폰정보는 저희가 wp-members 필수정보 기입 옵션을 통해 받고 있는 상황입니다.
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){
}
이 코드 내부에 똑같은 코드를 넣으면 될까요?
코스모스팜 회원관리 플러그인의 필수정보 반드시 입력 기능을 말씀하시는 건지요?
cosmosfarm_members_user_social_register 액션은 소셜 로그인으로 회원가입 후 바로 실행됩니다.
그렇기 때문에 휴대폰 정보를 직접 입력하기 전에 실행되기 때문에
프로필 업데이트 시 실행되는 wpmem_post_update_data 액션을 활용해주셔야 할 듯합니다.
아래의 코드를 활용해보시겠어요?
add_action('wpmem_post_update_data', 'my_wpmem_post_update_data', 10 , 1);
function my_wpmem_post_update_data($fields){
$user_id = isset($fields['ID']) ? $fields['ID'] : '';
$phone_number = isset($fields['휴대폰번호필드메타키']) ? $fields['휴대폰번호필드메타키'] : '';
$first_name = isset($fields['first_name']) ? $fields['first_name'] : '';
$cosmosfarm_members_send_sms_check = get_user_meta($user_id, 'cosmosfarm_members_send_sms_check', true);
if($phone_number && !$cosmosfarm_members_send_sms_check){
cosmosfarm_members_sms_send($phone_number, $first_name.'님 회원가입을 환영합니다');
update_user_meta($user_id, 'cosmosfarm_members_send_sms_check', '1');
}
}
위의 코드에서 휴대폰번호필드는 실제 WP-Members 필드 설정 쪽의 휴대폰 번호 필드 메타키로 적용해보세요.
고맙습니다.