익명 사용자에게 깃발을 표시하는 방법?


8

플래그 모듈을 사용하고 있지만 익명 사용자에게 플래그를 표시하는 데 문제가 있습니다.

"기능 만들기"와 "즐겨 찾기에 추가"라는 2 개의 플래그가 있습니다. 익명 사용자에게도이 플래그를 표시하고 싶습니다. 현재 로그인 한 사용자 (인증 된 사용자)에게만 표시됩니다.

이 플래그가 모든 사용자에게 표시되기를 원합니다 (로그인 여부에 관계없이). 그러나 익명 사용자가 플래그를 클릭하면 해당 사용자가 로그인 페이지로 경로 재 지정되어야합니다. 로그인 후 사용자는 플래그를 설정할 수 있어야합니다.

이것이 가능한가?


상황에 맞는 깃발은 무엇입니까? 메뉴 항목?
BetaRide 2016 년

@BetaRide : OP가 Flag 모듈로 플래그에 대해 이야기하고 있다고 생각 합니다.
AjitS

예, 플래그 모듈을 사용하고 있습니다.
Pranav Gandhi

답변:


10

사용자가 정상적으로 표시 플래그에 로그인하고 로그인하지 않은 경우 destination매개 변수를 사용하여 사용자를 로깅 페이지로 리디렉션하는 경우 'node.tpl.php'에서 다음과 같은 방법 으로이 작업을 수행 할 수 있습니다

global $user;
if(!$user->uid) {
    // $flag: bookmark or make_feature, $action: flag, $content_id: $nid.....
    $flag_link = flag_flag_link($flag, $action, $content_id);
    $flag_url = $flag_link['href'];
    if(isset($flag_link['query']['token'])) {
        $flag_url .= '?'.$flag_link['query']['token'];
    }
    print l(t('bookmark'), 'user/login' , array('query'=> array('destination' => $flag_url)));
} else {
    print render($content['links']['flag']);
}

고맙습니다.
Pranav Gandhi

4

익명 사용자에게 플래그표시 하려면 플래그 모듈 의 커뮤니티 문서에 작성된 내용을 참조하십시오 .

익명 사용자를위한 플래그 지정 (페이지 캐싱이 활성화 된 경우에도) 세션 API가 필요합니다 .

README.txt 와 비슷한 것 :

선택적 설치

1) 익명 사용자가 컨텐츠를 플래그 지정하는 기능은 http://drupal.org/project/session_api 의 Session API 모듈에서 제공됩니다 .

또한 세션 API플래그 모듈에서 종속성으로 언급되지 않습니다 .


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