[코스모스팜 회원관리] 리다이렉트 문제

안녕하세요. 회원관리 플러그인 구매 및 설치 후 잘 사용하고 있습니다.

이전 올라온 내용들 검색을 해봤는데, 참고할 케이스가 보이지 않아 문의글 드립니다.

 

로그인 시 주체가 최고관리자 여러명과 기타 나머지 고객으로 분류가 됩니다.

두 주체가 로그인했을때 다른 리다이렉트 페이지로 이동하고 싶은데 어떻게 해야할까요?

"Peter's login redirect" 플러그인은 작동이 잘 되다가 회원관리 플러그인 설치 후 충돌이 생기는지 작동이 되지 않으며,

예전에 비슷한 문의글을 찾았지만, 업데이트되어 지금과 환경이 많이 다릅니다.

지금 설정에는 "로그인 완료후 이동" 옵션을 통해 한곳으로 밖에 이동이 되지 않습니다.


참고할만한 답변이 있다면 꼭 부탁드립니다. 좋은 플러그인 감사합니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
  • 안녕하세요~^^

    관리자 역할과 특정한 역할이 로그인 한 경우

    각각 다르게 페이지가 이동되길 원하시는 건가요?

     

    아래의 코드를 테마 functions.php 파일 하단에

    삽입하여 적용해보시겠어요?

    add_filter('login_redirect', 'my_login_redirect', 10, 3);
    function my_login_redirect($redirect_to, $request, $user){
    	if(isset($user->roles) && is_array($user->roles)){
    		if(in_array('administrator', $user->roles)){
    			$redirect_to = '페이지 주소'; // 관리자 역할 로그인 후 이동할 페이지
    		}
    		elseif(in_array('사용자 역할', $user->roles)){
    			$redirect_to = '페이지 주소'; // 로그인 후 이동할 페이지
    		}
    	}
    	return $redirect_to;
    }

    사용자 역할에는 번역된 역할명이 아닌 subscriber와 같이 Role name (ID)를 입력해주세요.

    페이지 주소에는 로그인 후 이동될 페이지 주소를 각각 입력해주세요

    고맙습니다.

  • 답변주신 글 잘 확인하였으며, 바로 테스트 해보았습니다.

    일단 설정의 "로그인 완료 후 이동" 전제가 기본으로 되어있어야 작동을 합니다.

     

    다만 관리자와 구독자 등 직접 회원가입은 작동을 잘하는데, 

    네이버와 카카오같은 소셜로 로그인을 할 경우 구독자와 같이 특정페이지로 이동이 안됩니다.

    혹 이부분 더 조언해 주실수 있는지 확인 부탁드리겠습니다.

    감사합니다.

  • 아래 코드로 변경하여 적용해보시겠어요? 

    add_filter('login_redirect', 'my_login_redirect_210825', 10, 3);
    function my_login_redirect_210825($redirect_to, $request, $user){
    	if(isset($user->roles) && is_array($user->roles)){
    		if(in_array('administrator', $user->roles)){
    			$redirect_to = '페이지 주소'; // 관리자 역할 로그인 후 이동할 페이지
    		}
    		else{
    			$redirect_to = '페이지 주소'; // 관리자 외 로그인 후 이동할 페이지
    		}
    	}
    	return $redirect_to;
    }

    고맙습니다.

  • 넵. 확인하겠습니다.
    추가 답변 감사드립니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요