Importar usuários existentes do Wordpress para o Discourse

Olá a todos,

Talvez eu esteja perdendo algo, mas como posso realizar o seguinte?

Site WordPress existente contendo centenas de membros registrados.
Nova instalação auto-hospedada do Discourse usando o WordPress como provedor de SSO.

Preciso importar todos os usuários existentes do WordPress para o Discourse, para que eles não precisem primeiro fazer login no site WordPress para acessar as notificações do Discourse.

Esses usuários NÃO têm familiaridade com tecnologia, e pedir que eles primeiro façam login no site é simplesmente complexo demais para eles.

Eles estão acostumados a usar um sistema de quadro de avisos do Google Groups, no qual podem se comunicar por meio de postagens exclusivamente via e-mail. Portanto, eles não se provisionarão de forma confiável no novo Discourse hospedado.

Qualquer ideia seria muito apreciada.

Você está tentando migrar usuários para o Discourse ou para o Discord?

Se você estiver usando o WordPress como provedor de SSO para o Discourse com o plugin WP Discourse, ativar a opção Criar ou Sincronizar Usuários do Discourse no Login deve realizar o que você deseja. Os usuários do Discourse serão criados a partir dos usuários do WordPress quando fizerem o primeiro login no seu site WordPress.

@simon Discourse, desculpe.

Tenho essa opção ativada, mas não quero que os usuários sejam obrigados a fazer login para serem criados no Discourse.
Devido à falta de conhecimento técnico dos usuários, preciso importá-los em massa para o Discourse sem qualquer interação da parte deles.

A GRANDE maioria dos usuários nunca fará login de fato. No entanto, eles PARTICIPARÃO das conversas por meio de respostas por e-mail.

Existem algumas maneiras de abordar isso. Se você não se importa em fazer algum programando, o plugin WP Discourse disponibiliza algumas funções estáticas para sites que usam o WordPress como provedor de SSO para o Discourse. As funções estão neste arquivo: https://github.com/discourse/wp-discourse/blob/master/lib/utilities.php.

Para usá-las, você precisará percorrer todos os seus usuários do WordPress e, para cada usuário, chamar:

$sso_params = \WPDiscourse\Utilities\Utilities::get_sso_params( $user );

\WPDiscourse\Utilities\Utilities::sync_sso_record( $sso_params );

O parâmetro $user na primeira linha deve ser um objeto de usuário do WordPress.

Você precisará estar ciente da limitação de taxa do Discourse. Você deve limitar suas solicitações a cerca de uma solicitação por segundo. Quando a chamada a sync_sso_record for bem-sucedida, um usuário do Discourse será retornado.

Ótimo, obrigado. E se eu não tiver muita confiança com um pouco de programação?

O que publiquei acima pode ser a maneira mais fácil de migrar seus usuários existentes para o WordPress. Se você tiver um orçamento, pode criar um tópico na nossa categoria Marketplace para encontrar alguém que faça o trabalho para você.

Se não tiver um orçamento, pode implorar aos seus usuários para que façam login no seu site WordPress. Se você tiver muitos usuários que nunca farão login no WordPress ou no Discourse, talvez precise repensar sua abordagem.

Obrigado, @simon.

Postei no Marketplace.

Agradeço pela sua ajuda.

Dependendo da sua situação, a coisa mais fácil a fazer seria não usar SSO para fazer o login dos usuários no Discourse. Assim, você poderia simplesmente exportar uma lista de usuários do WordPress, extrair seus endereços de e-mail para um arquivo CSV e usar a funcionalidade de convite em massa do Discourse funcionalidade de convite em massa para convidá-los para o seu fórum. Você pode personalizar o e-mail de convite para informar aos usuários que precisam clicar no link no e-mail e concordar em participar da comunidade. Uma vez que eles fizerem isso, poderão interagir com o fórum por e-mail.

Parece que o que você deve fazer é importar os dados existentes. Você consegue obter arquivos mbox da lista?