hm ok, also effektiv
- Es gäbe eine Teilmenge Ihrer Benutzer mit unterschiedlichen E-Mails auf WordPress und Discourse.
- Ihr Benutzername ist garantiert derselbe, da er von Ihrem Identitätsanbieter sowohl für WordPress als auch für Discourse bereitgestellt wird.
Wenn wir den WP Discourse User Webhook von der DiscourseConnect-Funktionalität entkoppeln würden (möglich), dann würde die Benutzerabgleichung auf der Grundlage der E-Mail und nicht des Benutzernamens erfolgen. Ihre Situation ist etwas spezifisch für Ihre Identitätskonfiguration.
Ich denke, dieser Fall wird besser durch benutzerdefinierten Code auf Ihrem WordPress gehandhabt. Was Sie wollen, ist so etwas wie das hier:
function update_discourse_username( $user_login, $user ) {
update_user_meta( $user->ID, 'discourse_username', $user_login );
}
add_action( 'wp_login', 'update_discourse_username', 10, 2);
Grundsätzlich wird das Metafeld discourse_username nach dem Login als WP-Benutzername zugewiesen, da diese garantiert gleich sind. Beachten Sie, dass “user_login” das ist, was der “Benutzername” manchmal im WordPress-Code genannt wird.