Existe una especie de solución existente para esto. Discourse se puede configurar para que sea el proveedor de DiscourseConnect para WordPress (lo opuesto a la configuración habitual). Es fácil de configurar. Cuando está habilitado, hay una configuración opcional que permite sincronizar las cuentas de WordPress/Discourse según la dirección de correo electrónico del usuario.
Incluso hay un enlace agregado a la página de perfil del usuario:
(edición: ¿se puede subtitular una imagen sin IA?)
Probándolo ahora, al hacer clic en el enlace de la página de perfil no se rellena el campo Nombre de usuario de Discourse. Debería hacerlo. Al hacer clic en el enlace “Iniciar sesión con Discourse” que se puede agregar a la página de inicio de sesión, sí se actualiza automáticamente el campo Nombre de usuario de Discourse.
Creo que el propósito de sincronizar cuentas es actualizar el campo Nombre de usuario de Discourse de forma segura, por lo que probablemente valga la pena investigar qué está sucediendo con esto. También parece que hay un problema por el cual se permite que las cuentas que tienen una dirección de correo electrónico “no verificada” en WordPress sincronicen sus cuentas con Discourse. Eso probablemente no debería permitirse por defecto.
Para tu caso, es posible que no quieras permitir que los usuarios inicien sesión en WordPress a través de Discourse. Debería ser posible simplemente usar el enlace en la página de perfil para permitir que los usuarios sincronicen sus cuentas para que su campo de nombre de usuario de Discourse se rellene automáticamente. No deberías tener que habilitar el inicio de sesión en WordPress a través de Discourse para que esto funcione.
Una posible desventaja de este enfoque es que los usuarios tendrán que iniciarlo. No proporcionaría un botón que los administradores pudieran hacer clic para obtener el nombre de usuario de Discourse de un usuario.
