닉네임 글자 수 제한 질문

늘 고생하시는 제작자님 감사합니다.

 

add_action('wpmem_pre_register_data', 'my_wpmem_pre_register_data', 10, 1);
add_action('wpmem_post_update_data', 'my_wpmem_pre_register_data', 10, 1);
function my_wpmem_pre_register_data($fields){
	$display_name = isset($fields['display_name']) ? $fields['display_name'] : '';
	$length = mb_strlen($display_name, 'utf-8');
	
	if($length < 2 || $length > 8){
		echo "<script>alert('별칭은 2글자 이상 8자 이하만 입력 가능합니다.'); history.go(-1);</script>";
		exit;
	}
}

 

제작자님이 알려주신 위 코드로 회원가입 때는 잘 적용이 되었는데요

정보 수정할 때는 alert은 나오는 데 정보가 수정이 되어 버리네요.. 

 

혹시 방법이 있을까요?

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    wpmem_post_update_data 액션은 회원정보 수정 후에 코드가 실행됩니다.

    그렇기 때문에 회원정보의 값이 모두 변경된 후 해당 코드가 실행됩니다.

    wpmem_pre_update_data 액션을 활용해서 업데이트 전에 체크를 해보시겠어요?

    해당 액션의 자세한 내용은

    아래의 링크를 참고해보세요.

    https://rocketgeek.com/plugins/wp-members/docs/filter-hooks/wpmem_pre_update_data/

    고맙습니다.

  • 안녕하세요.

    기존 적용하신 코드는 그대로 두시고

    wpmem_post_update_data 부분만 wpmem_pre_update_data로 교체해서 확인해보시겠어요?

    고맙습니다.

  • add_action('wpmem_pre_register_data', 'my_wpmem_pre_register_data', 10, 1);
    add_action('wpmem_post_update_data', 'my_wpmem_pre_register_data', 10, 1);
    function my_wpmem_pre_register_data($fields){
      $display_name = isset($fields['display_name']) ? $fields['display_name'] : '';
      $length = mb_strlen($display_name, 'utf-8');
    
    	if($length < 2 || $length > 7){
    		echo "<script>alert('별칭은 2글자 이상 7자 이하만 입력 가능합니다.'); history.go(-1);</script>";
    		exit;
    	}
    }

     

    여기서


      $display_name = isset($fields['display_name']) ? $fields['display_name'] : ''; <- 이 부분이 닉네임을 변경하는 위치고
      $length = mb_strlen($display_name, 'utf-8'); <- 이 부분이 아래 부분과 같이 길이를 검사하는 부분인 거 같은데..

        if($length < 2 || $length > 7){
            echo "<script>alert('별칭은 2글자 이상 7자 이하만 입력 가능합니다.'); history.go(-1);</script>";
            exit;
        }

     

    저 순서만 바꾸면 alert 창만 뜨고 다음으로 진행이 안되더라구요..ㅜㅜ

     

    제가 PHP 완전 초보라.. 아직 해석이 어렵네요..

  • 와.. 잘 됩니다.. 감사합니다 ><!!! ㅠㅠㅠ

이미지 사진은 imgur에 업로드한 뒤 링크 걸어주세요.
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요