DiscourseConnect を使用しない場合の discourse_username 入力

これには既存の解決策があります。DiscourseはWordPressのDiscourseConnectプロバイダーとして設定できます(通常の構成とは逆)。設定は簡単です。有効にすると、ユーザーのメールアドレスに基づいてWordPress/Discourseアカウントを同期できるオプション設定があります。

ユーザーのプロフィールページにリンクも追加されます。


(編集:画像にキャプションを付けることは可能ですか?)

現在テスト中ですが、プロフィールページのリンクをクリックしてもDiscourseのユーザー名フィールドが入力されません。入力されるべきです。ログインページに追加できる「Discourseでログイン」リンクをクリックすると、Discourseのユーザー名フィールドが自動的に更新されます。

アカウント同期の目的は、Discourseのユーザー名フィールドを安全な方法で更新することだと思いますので、何が起こっているのか確認する価値はあるでしょう。また、WordPressで「未確認」のメールアドレスを持つアカウントがDiscourseとアカウントを同期できるという問題もあるようです。これはデフォルトでは許可されるべきではないでしょう。

あなたのケースでは、ユーザーがDiscourse経由でWordPressにログインすることを許可したくないかもしれません。プロフィールページのリンクを使用して、Discourseのユーザー名フィールドが自動的に入力されるようにアカウントを同期させることができます。これが機能するために、Discourse経由でWordPressにログインすることを有効にする必要はありません。

このアプローチの潜在的な欠点は、ユーザーがそれを開始する必要があることです。管理者がユーザーのDiscourseユーザー名を取得するためにクリックできるボタンは提供されません。