이 내용을 Support > WordPress 카테고리로 옮겼습니다. Contribute > Feature 카테고리는 Discourse 기능에 사용되기 때문입니다.
WordPress 플러그인에서 ‘Discourse Username Editable’ 필드는 이름이 적절하지 않을 수 있습니다. 해당 설정의 설명 문구를 업데이트하여 이 설정의 용도를 명확히 해야 합니다. ‘Discourse Username Editable’ 설정이 활성화되면 WordPress 사이트 사용자는 자신의 WordPress 프로필 페이지에서 Discourse 사용자 이름을 설정할 수 있습니다. 이 설정이 비활성화되어 있으면, WordPress 사이트의 관리자만 사용자의 Discourse 사용자 이름을 설정할 수 있습니다. Discourse 사용자 이름은 플러그인이 WordPress에서 Discourse로 게시물을 게시할 때만 사용됩니다.
WordPress와 Discourse 사이에 DiscourseConnect가 사용되는 경우, 사용자의 Discourse 사용자 이름은 처음에는 WordPress 사용자 이름에서 가져와서 설정됩니다. Discourse 사이트에서 auth_overrides_username 설정이 활성화되어 있으면, Discourse의 사용자 이름은 WordPress에서만 설정할 수 있습니다. Discourse에서 auth overrides username 설정이 _비활성화_되어 있으면, 사용자가 Discourse에서 사용자 이름을 편집할 수 있으므로 두 시스템 간의 사용자 이름이 동기화되지 않을 수 있습니다.
‘Discourse Username’ 필드에 관해, 이상적으로는 이 필드가 Discourse 사용자 이름에 기반하여 백그라운드에서 항상 설정되어야 합니다. 관련 코드를 마지막으로 확인한 지 오래되었지만, WordPress 사이트가 Discourse의 SSO 제공자로 사용되고 WordPress의 DiscourseConnect Provider 옵션 탭에서 “로그인 시 Discourse 사용자 생성 또는 동기화” 옵션이 활성화되어 있으면 Discourse Username 필드가 자동으로 채워진다고 생각합니다. Discourse가 WordPress의 SSO 제공자로 사용되는 경우( DiscourseConnect Client 설정과 함께)에도 Discourse Username 필드는 자동으로 설정됩니다.
이상적으로는, Discourse의 “로그인 시 Discourse 사용자 생성 또는 동기화” 옵션이 활성화되어 있든 아니든, WordPress가 Discourse의 SSO 제공자인 경우 Discourse Username 필드가 항상 자동으로 설정되어야 합니다. 두 사이트 사이에 DiscourseConnect가 사용되지 않는 경우를 위해 무엇을 할 수 있을지 모르겠지만, @angus가 그 문제에 대해 아이디어를 가지고 있을 수도 있습니다.
기본적으로 WordPress는 사용자가 사용자 이름을 변경하는 것을 허용하지 않으므로, 이 문제에 대해 많은 질문을 받은 적은 없습니다. WordPress와 Discourse 간에 사용자 이름이 동기화되도록 하려면 Discourse에서 auth_overrides_username 설정을 활성화해야 합니다. WordPress에서 “로그인 시 Discourse 사용자 생성 또는 동기화” 옵션도 활성화하는 것이 좋습니다. 이 옵션이 활성화되면, 사용자가 WordPress 사이트에 로그인할 때마다 Discourse에서 사용자의 정보가 업데이트됩니다. 이 옵션이 비활성화되어 있으면, 사용자가 Discourse에서 로그아웃한 후 DiscourseConnect로 다시 로그인할 때만 Discourse에서 사용자의 정보가 업데이트됩니다.