WP를 SSO 제공자로 사용할 때 이메일 인증을 생략하는 방법이 있나요?

WordPress를 SSO 제공자로 설정하고, 사용자가 계정을 생성하기 전에 WP 측에서 이메일 인증을 완료하도록 하고 있습니다. 그러나 사용자가 WP에서 가입한 후 Discourse로 리디렉션되면 여전히 활성화 페이지가 표시됩니다:

여기 메인 SSO 게시물에서 커스텀 구현의 경우 require_activation = true를 설정해야 한다는 내용을 많이 볼 수 있습니다. 하지만 discourse wp 플러그인 SSO의 경우, 사용자가 Discourse에서 이메일을 확인하도록 요구하는 절차를 우회하는 것이 기본적으로 불가능한가요?

이것이 핵심 기능에 구현되어 있을 것 같아서, 아마도 제가 단순한 것을 놓치고 있는 것 같습니다.

감사합니다.
Zach

대부분의 경우, WordPress 계정을 만들 때 사용되는 이메일은 의미 있는 방식으로 검증되지 않습니다. Discourse는 이메일 주소에 크게 의존합니다.

과거에는 require_activation 동작을 오버라이드하기 전에 가입에 사용한 이메일이 제대로 검증되었는지 확인해야 한다는 주의 사항이 있었습니다.

여기서 가장 근거 있는 추측은, WordPress가 SSO 제공자일 때 스팸 가입을 방지하기 위해 해당 옵션이 체크박스 형태로 존재하지 않는다는 것입니다. 그러나 커스텀 함수를 통해 이 동작을 쉽게 오버라이드할 수 있습니다.

add_filter( 'discourse_email_verification', 'wpdc_custom_disable_email_verification' );
function wpdc_custom_disable_email_verification() {
    return false;
}

와, @itsbhanusharma 님 정말 감사합니다! 이거 딱 좋네요.

궁금한 게 하나 있는데, 그 훅은 플러그인 소스를 직접 파고 들어가서 찾으신 건가요, 아니면 사용 가능한 액션과 필터에 대한 문서가 어딘가에 있는 건가요? (저는 찾지 못했는데, 혹시 제가 놓친 게 있는 건지 모르겠네요)

이 메타 사이트의 다양한 주제에서 여러 번 언급된 적이 있습니다. 개인적으로 일부 클라이언트에 이 방법을 사용하고 있어서 제 노트에도 적어두었거든요 :slight_smile: