워드프레스 로그아웃 확인 메시지 표시되지 않도록 설정하기

워드프레스에서 로그아웃 메뉴를 누르면 "...에서 로그아웃 하려고 합니다. 로그아웃하시겠습니까? (You are attempting to log out of... Do you really want to log out?)"라는 메시지가 표시되는 경우가 있습니다. 워드프레스 로그아웃 확인 메시지 표시되지 않도록 하려는 경우 참고해보세요.

워드프레스 로그아웃 확인 메시지 표시되지 않도록 하는 방법

워드프레스에서 로그아웃 메뉴를 누를 때 아래 그림과 같이 로그아웃 확인 메시지가 표시되는 경우가 있습니다.

워드프레스 로그아웃 메시지 WordPress logout message

이런 메시지가 표시되는 이유는 로그아웃이 제대로 이루어지지 않았기 때문입니다.

로그아웃 메뉴에서 URL을 http://사이트주소/wp-login.php?action=logout&redirect_to=리디렉션주소와 같이 지정해보고, 그래도 문제가 해결되지 않으면 로그아웃 메뉴 항목을 "테마 디자인 > 메뉴"에서 추가하지 말고, 워드프레스 테마 함수 파일(functions.php)에서 직접 추가하여 문제를 해결할 수 있습니다. 테마 함수에 다음과 비슷한 코드를 추가합니다.

add_filter( 'wp_nav_menu_items', 'add_loginout_link', 10, 2 );
function add_loginout_link( $items, $args ) {
if (is_user_logged_in() && $args->theme_location == 'primary') {
$items .= '<li><a href="'. wp_logout_url( home_url() ) .'">로그아웃</a></li>';
}
return $items;
}

위에서 theme_location은 해당 메뉴 위치에 맞게 수정해야 합니다. 위의 코드를 넣을 때 가능하면 차일드 테마(자식 테마) 내의 함수 파일에 추가하시기 바랍니다. 그렇지 않고 부모 테마(원래 테마) 내의 함수 파일에 직접 추가할 경우 추후 테마 업데이트 시 수정 사항이나 추가 사항이 초기화되어 사라집니다.

wp_logout_url()에 대한 자세한 내용은 여기를 참고하시기 바랍니다.

위와 같은 함수를 추가한 후에 테스트해보면, 로그아웃 시 홈페이지로 리디렉션됩니다. 만약 "현재 페이지"로 리디렉션되게 하려면 wp_logout_url( home_url() ) 대신 wp_logout_url( get_permalink() )를 사용하면 됩니다.

참고


10개 댓글

  1. "로그아웃하시겠습니까?" 메시지가 나오는게 정상인줄 알았는데 그게 아니네요. 위의 방법을 한번 시도해봐야겠네요

    1. 안녕하세요?

      theme location은 보통 헤더 파일(header.php)에서 확인할 수 있습니다.
      header.php 파일을 메모장 등으로 열고 theme_location을 검색해보시기 바랍니다.
      보통 'primary', 'main', 'top' 등으로 지정되어 있을 것입니다.

댓글 남기기

* 이메일 주소는 공개되지 않습니다.