Sincronização bidirecional entre nome de usuário do WP Discourse e nome de usuário do Discourse?

Algumas perguntas e algumas notas

No entanto, eles serão os mesmos em novos cadastros, já que você está usando o DiscourseConnect. Presumo que você esteja bem com isso e esteja apenas preocupado com a sincronização em si (ou seja, após a criação da conta)?

Como você está prevendo o caso em que um usuário cria uma conta no Wordpress e ainda não acessou o Discourse? Nenhuma conta do Discourse existirá. Nesse caso, o campo Nome de Usuário do Discourse não seria editável?

Observe que o webhook “Atualizar Dados do Usuário” (veja “Webhooks” nas configurações do WP Discourse) atualizará o Nome de Usuário do Discourse no Wordpress quando ele for alterado no Discourse. Essa é uma parte da sincronização bidirecional que você está prevendo.

Portanto, especificamente o que você deseja é apenas que o plugin WP Discourse atualize o nome de usuário do Discourse do usuário quando ele for alterado, sim?

Agora, esse campo é usado por pessoas diferentes para propósitos diferentes. Algumas pessoas querem poder editar esse campo sem atualizar o nome de usuário do usuário do Discourse associado à conta que eles usam com o DiscourseConnect.

No entanto, há uma solução relativamente simples. Poderíamos apenas adicionar uma ação em algum lugar perto de aqui para que você possa usar uma solicitação PUT para o Discourse para atualizar o nome de usuário no Discourse, ou seja, como você está fazendo agora. Eu apenas adicionaria que a maneira fácil de fazer isso é usar o método abstraído discourse_request nas Utilidades do Plugin WP, ou seja,

use WPDiscourse\\Utilities\\Utilities as DiscourseUtilities;
$path = ''
$args =  array(
);
$response = DiscourseUtilities::discourse_request( $path, $args );

Usando o Webhook e o callback de ação, você teria uma sincronização bidirecional da maneira que está prevendo, assumindo que você considerou as duas perguntas que levantei acima.

Ficarei feliz em revisar e mesclar um PR com uma ação adicional nesse sentido.

4 curtidas