로그인 시 로그아웃 링크를 표시하고 로그아웃 시 로그인 링크 표시하기(숏코드)

Last Updated: 2023년 07월 17일 | | 댓글 남기기

로그인 시 로그아웃 링크를 표시하고 로그아웃 시 로그인 링크 표시하기(숏코드) 2

로그인 시 로그아웃 링크를 표시하고 로그아웃 시 로그인 링크를 표시하도록 만들기

워드프레스 메뉴에 로그인 시 로그아웃 링크를 표시하고 로그아웃 시 로그인 링크를 표시하려면 플러그인을 사용하거나 간단한 코드를 사용할 수 있습니다.

이와는 약간 다른 상황으로 사용자의 로그인 상태에 따라 로그인/로그아웃 링크를 표시하는 숏코드를 만들어서 사이드바나 상단 위젯 영역 등에 추가하고 싶은 경우가 있을 수 있습니다.

이 경우 링크된 글에 소개된 코드를 조금 응용하여 다음과 같은 숏코드를 만들 수 있습니다.

add_filter('widget_text', 'do_shortcode');
function login_switch($atts) {
if (is_user_logged_in()) {
$items .= '<li><a href="'. wp_logout_url() .'">로그아웃</a></li>';
}
elseif (!is_user_logged_in()) {
$items .= '<li><a href="'. site_url('wp-login.php') .'">로그인</a></li>';
}
return $items;
}
add_shortcode('switchlogin', 'login_switch');

이 코드를 사용 중인 테마의 함수 파일에 추가하도록 합니다. (가급적이면 차일드 테마를 만들어서 진행하도록 합니다. 아바다 등 대부분의 유료 테마에서는 차일드 테마가 함께 제공됩니다. 차일드 테마가 제공되지 않으면 직접 만들거나 One-Click Child Theme 같은 플러그인을 사용할 수 있습니다.)

이제 로그인/로그아웃 링크를 표시하려는 곳에 [switchlogin] 쇼트코드를 추가하면 됩니다. 사이드바와 같은 위젯 영역인 경우에는 텍스트 위젯에 추가하면 정상적으로 작동할 것입니다.

(추가하는 위치에 따라 li 태그는 span 태그로 변경해도 됩니다.)

숏코드가 문구 그대로 표시되면 함수 파일에 다음 코드를 추가합니다.

add_action( 'pre_get_posts', 'exclude_private_category' );

참고:


댓글 남기기

Leave a Comment