Eu administro um blog WordPress com múltiplos autores. Como posso fazer com que as postagens funcionem sem que todos os meus autores precisem criar uma conta no Discourse? Devo usar SSO entre o WordPress e o Discourse para resolver esse problema?
Se você deseja que os autores publiquem posts em seu próprio nome no Discourse, eles precisarão criar contas no Discourse. O SSO é uma boa abordagem para isso, mas quando o SSO está habilitado, os usuários só poderão fazer login no fórum através do site WordPress. Isso pode não ser o que você deseja.
Outra opção seria publicar todos os posts do WordPress no Discourse usando um único nome de usuário do Discourse. Se os usuários deixarem a configuração de Nome de Usuário do Discourse em branco, os posts serão publicados no Discourse pelo Nome de Usuário de Publicação definido na guia Configurações de Conexão do plugin.
Interessante… Pelo que pude ver, nenhum dos meus autores tem isso configurado. Quando olho nos perfis dos usuários, não vejo a opção de configuração de nome de usuário do Discourse. Onde eu encontraria isso?
Além disso, acabei de perceber que estou usando a seguinte configuração no plugin Discourse para WordPress:
Remove o campo Nome do Discourse da página de perfil do usuário do WordPress.
Não exibir campo Nome do Discourse - A menos que o SSO esteja habilitado, essa configuração fará com que todas as postagens publicadas no Discourse sejam publicadas pelo ‘Nome de Publicação’.
Minha compreensão é que a configuração acima forçará todas as postagens a serem publicadas pelo usuário definido como usuário de publicação na configuração “Nome de Publicação”.
O que estou deixando passar?
Obrigado. Acabei de perceber que eu tinha a opção Não Exibir Campo de Nome do Discourse ativada. Isso deveria ter forçado todos os posts a usarem o Nome de Usuário de Postagem.
Sim, desative isso se quiser que as postagens sejam feitas pelo próprio nome de usuário do Discourse do autor, o que você provavelmente conseguirá configurar sem problemas. (Alguns temas, como o Extra, impedem a edição do nome de usuário ao escondê-lo na página de perfil.)
Editado para adicionar: Agora percebi que o título deste tópico é um número de erro. Não tenho certeza de que algo que eu disse resolverá isso.
Sim, é assim que deve funcionar. Você consegue publicar posts com sua conta do WordPress no Discourse?
A causa mais comum do erro 403 ao publicar posts no Discourse é que o Nome de Usuário do Discourse está configurado incorretamente. Pode valer a pena desativar a configuração ‘Não Exibir Campo de Nome do Discourse’ e verificar as páginas de perfil de alguns dos seus autores. Certifique-se de que o campo Nome de Usuário do Discourse para os autores esteja vazio. Ele está localizado na seção Informações de Contato da página de perfil do usuário.
Em breve, vamos mover o Nome de Usuário do Discourse para fora da seção Informações de Contato e também oferecer aos administradores do site a opção de definir manualmente o Nome de Usuário do Discourse para seus autores, ocultando essa configuração dos autores. Isso é por motivos de segurança — para garantir que as pessoas estejam usando o Nome de Usuário do Discourse correto em sites com múltiplos autores.
Certo, era isso que eu esperava.
Eu estava pensando que o problema estava relacionado aos nomes de usuário não coincidirem, mas achei que, ao ativar a opção “Não exibir o campo de nome do Discourse”, isso substituiria tudo.
Acho que a mudança que você mencionou seria realmente útil.
Acabei de tentar postar com a opção desativada, mas obtive o mesmo erro.
Após desativar a opção, você pode verificar sua página de perfil para garantir que o campo Nome de Usuário do Discourse esteja vazio?
Os nomes de usuário do Discourse estão em branco para todos os usuários.
Quando você vai para a aba de opções de conexão do WP Discourse, está vendo uma mensagem dizendo que ‘Você está conectado ao Discourse’?
Para as configurações de Chave da API e Nome de Usuário de Publicação na aba de opções de conexão, você está usando a Chave da API de Todos os Usuários do seu fórum Discourse? O Nome de Usuário de Publicação está definido como o nome do usuário do sistema do seu site? O nome de usuário padrão para o usuário do sistema é ‘system’.
Sim. Na aba de opções de conexão, estou vendo a mensagem “Você está conectado ao Discourse”.
A chave da API é para todos os usuários e o nome de publicação é o administrador do fórum Discourse. O nome de usuário não é o usuário do sistema “system”.
Você poderia tentar alterar o nome de usuário para ‘system’ (sem as aspas) para ver se isso faz alguma diferença?
Mudei o nome de usuário para system, mas recebo a mesma mensagem de erro.
“Ocorreu um erro ao publicar esta postagem no Discourse.”
Aqui estão os detalhes que aparecem no e-mail de erro:
Motivo da falha:
Um código de resposta 403 foi retornado pelo Discourse.
Proibido
Verifique se:
- o autor configurou corretamente seu nome de usuário no Discourse
Alguém mais tem outras ideias de como resolver isso?
A única coisa que consigo pensar para tentar é criar uma nova chave de API e reinsertar tudo.
Tudo bem… é muito estranho… Estou usando o nodechef para hospedar o Discourse… Me pergunto se é um problema na build deles ou na configuração do servidor. O que acham?
Tentei alterar as chaves e ainda tenho o mesmo problema.
Obrigado pelos detalhes sobre sua hospedagem. Eu deveria ter perguntado sobre isso. É possível que o problema esteja relacionado à hospedagem deles. Não é um problema que eu tenha encontrado com nossa hospedagem, nem com sites hospedados em https://www.communiteq.com/, ou com sites auto-hospedados.
Se você tiver o WP-CLI disponível no seu site WordPress, a maneira mais fácil de depurar isso seria tentar criar um tópico do Discourse a partir do console do wp, usando as mesmas credenciais que você está usando na configuração do seu WP Discourse. A resposta a essa solicitação forneceria alguns detalhes sobre o problema.
Certo. Vou tentar isso.
Estava pensando em configurar uma instância auto-hospedada na minha conta da AWS. Vou tentar e ver se apresenta os mesmos problemas. Obrigado pela sua ajuda.
Por algum motivo, a publicação falha com o erro 403. E não importa o que eu faça.
Motivo da falha:
Um código de resposta 403 foi retornado pelo Discourse.
Proibido
Verifique se:
- o autor configurou corretamente seu nome de usuário no Discourse
A aba Conexão mostra ‘conectado ao Discourse’. A configuração ‘Não exibir campo de nome do Discourse’ está Desativada na Publicação.
Já gerei uma nova chave de API para garantir a conexão. O nome de usuário padrão para o usuário do sistema é ‘system’.
Estou sem ideias.
Qualquer ajuda será apreciada.