로그인을 가로채는 wp-discourse 훅

s2member를 사용하는 클라이언트가 있습니다. 특정 멤버십 레벨에 속하지 않은 사용자는 로그인되어 Discourse에 접근하는 대신 정보 페이지로 리다이렉트되기를 원합니다. (읽을 수 없는 그룹의 멤버로 로그인되는 것을 원하지 않으며, 아예 로그인되지 않은 상태로 두기를 원합니다.)

필요한 s2member 관련 내용은 여기 있는 것 같습니다: Package s2Member\API_Functions ( Functions ) | s2Member Codex

wp-discourse에 이를 수행하는 훅(hook)이 있을 것으로 생각하지만, 그것이 무엇인지 찾아볼 곳이 어디인지 모르겠습니다.

아마도 s2member 문서를 확인하여 사용자가 유료 구독자인지 확인할 수 있을 것 같은데, 이 부분에도 힌트를 주시면 감사하겠습니다!

찾았어요.

add_action( 'wpdc_sso_provider_before_sso_redirect', 'wpdc_custom_check_user_membership', 10, 2 );
function wpdc_custom_check_user_membership( $user_id, $user ) {
    $s2member_access_level = get_user_field('s2member_access_level'); # s2Member 멤버십 액세스 레벨 번호.
    if ( $s2member_access_level < 1 ) {
   wp_safe_redirect( 'https://myfishingcapecod.com/members-only-content/' );

   exit;

    }
}