직접 로그 아웃 링크


14

다음 링크와 함께 로그인 / 로그 아웃 양식을 표시 할 수 있음을 알고 있습니다.

http://example.com/index.php?option=com_users&view=login

그러나 일단 로그인하면이 링크는 사용자를 클릭해야하는 로그 아웃 버튼이있는 페이지로 사용자를 리디렉션합니다.

현재 사용자를 직접 로그 아웃 할 링크를 만들 수 있습니까?

답변:


24

다음 링크는 직접 로그 아웃하기위한 것입니다.

http://example.com/index.php?option=com_users&task=user.logout

그러나 오류 메시지를 피하려면 사용자 토큰이 필요 Invalid Token하며 토큰을 얻으려면 일부 PHP 마법이 필요합니다. 다음 코드는 Login손님에 대한 Logout Username링크와 로그인 한 사용자에 대한 직접 링크를 표시합니다.

$user = JFactory::getUser();
if ($user->guest)
{
    echo '<a href="index.php?option=com_users&view=login">Login</a>';
}
else
{
    $userToken = JSession::getFormToken();
    echo '<a href="index.php?option=com_users&task=user.logout&' . $userToken . '=1">Logout '  . $user->username . '</a>.';
}

코드는 확장에 포함되거나 PHP 코드를 직접 삽입 할 수있는 플러그인 / 모듈 (예 : DirectPHP , Custom HTML Advanced , Sourcerer 등 )을 사용하여 포함될 수 있습니다 .


1
하하, 너무 명백해 ...? 미안합니다. 그러나 공평하게 말하면 코드 스 니펫이 매우 유용하다는 것을 알았으며 클라이언트 웹 사이트에서 항상 코드 스 니펫을 사용하여 바닥 글에 작은 비 침입 로그인 링크를 사용했습니다. 코드를 게시하기 위해 무엇을 물어볼 지 잘 모르겠습니다.
johanpw

+1 매우 유용합니다! 특정 페이지로 리디렉션 한 후 어떻게 리디렉션 할 수 있습니까? 일부가 &additional_parameter로그 아웃 한 후 리디렉션을 허용하는 데 사용할 수는?
Gruber

이봐, 고마워! 좀 더 자세히 설명하는 문서를 제공 할 수 있습니까? 감사합니다!
Gruber


6

최종 답변으로 Joomla에는 "로그 아웃"메뉴 항목이 내장되어 있으며 핵심에 추가되었습니다. 따라서 이제 추가 플러그인이 필요하지 않습니다.

로그 아웃 메뉴 항목은 또한 로그 아웃시 리디렉션을 허용합니다.

또한 로그인 메뉴 항목을 '게스트'액세스로 설정하고 로그 아웃 메뉴 항목을 '등록됨'액세스로 설정하면 메뉴가 상태에 따라 변경됩니다.

자세한 SE 답변은 여기 : 로그인을 로그 아웃으로 변경


Joomla 핵심 기능 만 사용하므로 최신 버전의 Joomla를 사용하는 웹 사이트에 가장 적합한 방법 일 것입니다. 그러나 프로그래밍 방식으로 로그 아웃 링크를 만들어야하는 경우 "허용 된 답변"이 좋은 솔루션입니다.
feculededentier

4

세 번째 옵션으로, Joomla에 직접 로그 아웃 메뉴 항목을 추가하고 확인없이 사용자를 로그 아웃 하는 빠른 로그 아웃 구성 요소가 있습니다.

또한 로그 아웃 후 원하는 페이지로 리디렉션을 설정하는 옵션도 제공합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.