워드프레스 코스모스팜 회원관리 플러그인을 유용히 잘 쓰고 있습니다.
본인인증 관련해서 아래와 같은 궁금점이 있어요.
***** 문의내용 *****
- 메일주소+비번만으로 가입시킨 기존회원들이 있습니다.
- 추가로 본인인증 기능을 활성화 했을 때 다른 필수항목이 추가되면 우선적으로 필수항목을 입력해야 한다는 알림과 폼으로 이동하는 것처럼 본인인증을 하는 페이지로 이동되나요?
- 가입시에는 본인인증 없이 가입시키고, 가입 후 본인인증을 (선택적으로) 할 경우 회원등급을 높여줄 수 있는 방법이 있을까요?
감사합니다(_ _)
안녕하세요~^^
다른 필드의 값도 있는지 확인하신다는 건지요?
아래의 코드를 활용해보시겠어요?
add_action('wpmem_post_update_data', 'my_reg_hook');
function my_reg_hook($fields){
if($fields['본인인증필드'] && $fields['필드A'] && $fields['필드B']){
$user = new WP_User(get_current_user_id());
$user->remove_role('subscriber');
$user->add_role('contributor');
}
}
고맙습니다.
주신 답변에 이어 조금 더 여쭤요
본인인증 필드를 포함 복수의 필드메타값을 함께 적용하려면 어떻게 해야 하나요?
['본인인증필드, 필드A, 필드B']
이런식으로 넣어도 되나요?
빠른 답변과 제게 필요한 내용을 안내해 주셔서 감사합니다 (_ _)
안녕하세요~^^
1. 필수 항목이 추가되면 알림과 필수 항목 입력 페이지로 이동하게 하시려면
워드프레스 관리자 -> 회원가입관리 페이지에서
필수 정보 반드시 입력을 사용으로 설정해보세요.
워드프레스 관리자 -> 설정 -> WP-Members -> 필드 페이지에서
해당 필드에 필수를 체크하신 후 저장해 보세요.
이때 본인인증 필드를 필수로 체크하시면
이전에 가입한 회원들도 로그인 시 본인인증을 하게 됩니다.
2. 본인 인증을 할 경우 회원 등급을 높이려면
워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보시겠어요?
add_action('wpmem_post_update_data', 'my_reg_hook');
function my_reg_hook($fields){
if($fields['본인인증필드']){
$user = new WP_User(get_current_user_id());
$user->remove_role('subscriber');
$user->add_role('contributor');
}
}
위 코드에서 본인인증 필드 부분을 실제 본인인증 필드의 Meta Key 값으로 변경해주세요.
Meta Key 값은 WP-Members 플러그인의 필드 관리 페이지에 나와있습니다.
'subscriber'와 'contributor' 부분은 사이트에 맞게 적절히 수정해보세요.
아래의 링크들도 참고해보세요.
https://rocketgeek.com/plugins/wp-members/docs/filter-hooks/wpmem_post_update_data/
https://codex.wordpress.org/Roles_and_Capabilities
고맙습니다.