회원관리 플러그인의 로그인 화면으로 통일하는 방법이 있을까요?

안녕하세요, 회원관리 플러그인을 사용하고 있습니다.

(로그인전) 로그인이 필요한 페이지 접근 시 로그인 디자인이 현재 테마에서 제공하는 로그인 화면이 나올때가 있습니다.

사이트내에서 이뤄지는 모든 로그인의 화면을 회원관리 플러그인의 것으로 변경이 가능할까요? 

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

    login_url 필터를 사용하시면 워드프레스 로그인 페이지 주소를 수정하실 수 있습니다.

    테마 쪽에서도 login_url 필터를 사용해서 테마 쪽 로그인 페이지 주소로 적용한다면

    테마 쪽 로그인 페이지가 표시될 수도 있습니다.

    테마에 로그인 페이지를 비활성화할 수 있는 설정이 있는지 확인해보시겠어요?

     

    테마 쪽에서 설정으로 지원하지 않는다면

    워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에

    아래의 코드를 추가해보시겠어요?

    add_filter('login_url', 'my_login_url', 999, 2);
    function my_login_url($login_url, $redirect_to){
    	if(!is_admin()){
    		$cosmosfarm_members = new Cosmosfarm_Members();
    		$option = get_cosmosfarm_members_option();
    		
    		if(isset($_GET['redirect_to']) && $_GET['redirect_to']){
    			$redirect_to = '';
    		}
    		else if($option->login_page_id == get_the_ID()){
    			$redirect_to = '';
    		}
    		else if(wpmem_login_url() == get_permalink()){
    			$redirect_to = '';
    		}
    		
    		$redirect_to = $cosmosfarm_members->login_redirect($redirect_to);
    		
    		if($option->login_page_id || $option->login_page_url){
    			if($option->login_page_id){
    				if($redirect_to){
    					$login_url = add_query_arg(array('redirect_to'=>urlencode($redirect_to)), get_permalink($option->login_page_id));
    				}
    				else{
    					$login_url = get_permalink($option->login_page_id);
    				}
    			}
    			else if($option->login_page_url){
    				if($redirect_to){
    					$login_url = add_query_arg(array('redirect_to'=>urlencode($redirect_to)), $option->login_page_url);
    				}
    				else{
    					$login_url = $option->login_page_url;
    				}
    			}
    		}
    		else if(wpmem_login_url()){
    			$login_url = wpmem_login_url($redirect_to);
    		}
    	}
    	return $login_url;
    }

    고맙습니다.

  • 회원만 상품을 구매할 수 있도록 설정하셨는지요?

    비회원으로 상품 구매 시 우커머스 쪽 로그인 레이아웃대신

    코스모스팜 회원관리 플러그인의 로그인 레이아웃을 표시하시려면

    워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에

    아래의 코드를 추가해서 확인해보시겠어요?

    remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_login_form', 10 );
    add_action('woocommerce_before_checkout_form', 'my_woocommerce_checkout_login_form', 999);
    function my_woocommerce_checkout_login_form(){
    	if(!is_user_logged_in()){
    		global $post;
    		
    		$option = get_cosmosfarm_members_option();
    		$redirect_to = isset($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '';
    		
    		if(!$redirect_to && $post->ID == $option->login_page_id){
    			$redirect_to = home_url();
    		}
    		else if(!$redirect_to){
    			$redirect_to = get_permalink();
    		}
    		
    		$redirect_to = apply_filters('cosmosfarm_members_login_redirect_to', $redirect_to);
    		$login_action_url = remove_query_arg(array('verify_email_confirm', 'register_success', 'login_timeout'));
    		
    		include_once COSMOSFARM_MEMBERS_DIR_PATH . "/skin/{$option->skin}/login-form.php";
    	}
    }

    고맙습니다.

  • 아, 죄송합니다. 테마에는 별도의 옵션이 없었고, 위 코드를 적용해도 변하지 않아 잠시 생각해보니, 워드프레스 로그인 화면이 아니라 우커머스 주문 페이지 접근 시 나타나는 로그인 화면이니 우커머스의 로그인 화면인 것 같습니다. 우커머스도 가능할까요?

  • 앗! ㅠㅠ 로그인을 안하고 myaccount > orders 페이지로 접근할 때 나오는 우커머스 로그인 화면을 코스모스팜 회원관리 로그인으로 변경하고 싶다는 것이었는데, 제가 주문으로 써놔서 오해를 드렸네요. myaccount > orders 페이지 접근 시 나오는 우커머스 로그인 화면을 코스모스팜 회원관리 로그인으로 변경하려면 어떻게 해야 할까요?
  • 우커머스 쪽 내 계정 페이지 로그인 레이아웃 대신

    코스모스 팜 회원관리 쪽 로그인 레이아웃이 표시되는 건

    저희도 연구를 해봐야 할 듯합니다.

    좋은 방법을 찾게 되면 다시 안내해드리겠습니다.

    고맙습니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기