Discourse でユーザー名を変更すると WordPress アカウントが完全に削除される(WP をプロバイダーとする SSO)

SSO with Wordpress but users cannot change their usernameの議論を続けます:

私は Discourse WordPress プラグインを使用しており、WP を SSO プロバイダーとして設定しています。

ユーザーが WP でアカウントを作成する際、Woocommerce を通じてアカウント作成を行うように設定しています。また、WP アカウントをメール認証で確認するまでログインできないようにする設定も導入しています。

その後、ユーザーがフォーラムにアクセスすると「ログイン」ボタンをクリックする必要があります。ユーザーが認証済みでログイン済みの場合、Discourse に対して認証され、フォーラムアカウントがプロビジョニングされます。

これまで、Discourse 上でユーザーがユーザー名を変更できるようにしていました。

ユーザー名を変更することの后果は何ですか?

しかし、WordPress 側で起こっていることは、ユーザーのアカウントが私の Woocommerce/WordPress データベースから削除(または削除済み)されていることです。どこにも見つかりません。

その後、ユーザーが再度ログインしようとすると、当然ながら WP にアカウントが存在しないためログインできません。これは予想された動作でしょうか?他の人も同様の経験をしたことがありますか?!

その後、「ユーザー名変更期間」を「0」に変更しました。

「登録後のユーザー名変更が可能な最大日数(0 の場合は変更を許可しない)」

ユーザー名を変更したい場合は、私たちへ連絡いただければ、フォーラムと一致するように WordPress 側で変更します。これで問題なく動作しています(@AdamCapriolaこちらで提案した「Username Changer」プラグインを使用しています)。

WordPress が Discourse の SSO プロバイダーとして機能している場合、WP Discourse プラグインが WordPress ユーザーに対して行う変更は、discourse_sso_user_id および discourse_username という メタデータ フィールドをユーザーに追加することだけです。Discourse 側でユーザー名を変更した際に、WordPress ユーザーがデータベースから削除されるような動作を、このプラグインが行うとは私は知りません。

Discourse 側でユーザー名を変更した際に私が知る限り唯一の影響は、WordPress 側に保存されている Discourse ユーザー名が、実際の Discourse ユーザー名と同期しなくなる可能性があることです。この場合、ユーザーが Discourse に投稿を投稿する能力に影響が出ます。ただし、SSO ログインに問題が生じることはありません。また、ユーザーが WordPress データベースから削除されるような事態も決して起こりません。

これは Discourse の問題ではなく WordPress の問題ですが、基本的な WordPress の機能を上書きするためにプラグインを使用することは推奨しません。WordPress ではユーザー名は編集可能になることを意図していません。デフォルトの動作に従うのが最善です。