Plugin WP Discourse apresentando comportamento estranho

Novos posts estão criando novos tópicos no Discourse, mas o link para iniciar a conversa não está aparecendo. Em vez disso, recebo:

Comentários não estão disponíveis para este post no momento.

Se eu acessar o plugin, também recebo esse erro? Mas ele está conectado, já que está criando tópicos, pelo menos.

Você não está conectado ao Discourse. Se estiver configurando o plugin, essa mensagem deve desaparecer após completar o formulário nesta página.

Eu também notei isso no Discourse

Detectamos uma solicitação de API usando um método de autenticação obsoleto. Atualize-o para usar autenticação baseada em cabeçalho.

Você atualizou o wp-discourse recentemente?

Sim, acredito que tudo esteja nas atualizações mais recentes…

Também notei isso na postagem do blog:

Houve um erro ao retornar a lista de categorias do Discourse

Desativei o plugin, recriei o webhook (que está verde) e criei uma nova chave de API. Não ajudou.

2.4.0.beta7

(58b5d1434b)

Wordpress 5.3

Plugin 1.9.7

Estava funcionando antes de você atualizar o WordPress para a versão 5.3 ontem?

O plugin WP Discourse não deveria estar causando esse aviso. Todas as solicitações de API feitas pelo plugin usam autenticação baseada em cabeçalho. De qualquer forma, isso é apenas um aviso de obsolescência. A autenticação de solicitações de API com parâmetros de URL continuará funcionando no futuro próximo.

Você pode verificar se o usuário inserido na configuração “Nome de usuário para Publicação” do plugin ainda está ativo no Discourse? Para fazer isso, vá para a página de administração do usuário e examine a linha “Ativado” na seção Permissões. Se “Ativado” estiver definido como Não, clique no botão Ativar Conta.

Funcionava no passado e isso foi antes da atualização, mas não posso afirmar que os dois estão relacionados.

É a única coisa de requisição de API que tenho… mas o usuário foi desativado… e isso resolveu, muito obrigado - hmm, por que isso teria acontecido? Muito obrigado mesmo.

O aviso pode ter sido criado antes de você atualizar o plugin para a versão 1.9.7. Vou ficar de olho nesse aviso para garantir que ele não esteja sendo gerado pela versão atual do plugin.

Isso provavelmente está relacionado à configuração do site do Discourse invalidar e-mail de administrador inativo após dias. Houve algumas mudanças recentes que podem afetar contas usadas apenas para conexão com a API. Acredito que esse problema foi corrigido em uma atualização recente.

FYI, esse usuário foi desativado novamente. No entanto, estou agora atualizando para o Discourse mais recente.

Foi desativado - novamente reativado e atualizado para a versão mais recente do Discourse…

Parece incorreto que o usuário tenha sido desativado novamente. Meu entendimento é que reativar o usuário clicando no botão Ativar deve mantê-lo ativo pelo período de dias definido na configuração do site invalidar e-mail de administrador inativo após dias. Pode verificar essa configuração para garantir que ela esteja definida com seu valor padrão de 365 dias? Além disso, avise-nos se o usuário for desativado novamente.

Verifiquei que a configuração está em 365. Notei que a conta estava inativa novamente. Reativei e atualizei o Discourse (novamente).

Estou analisando o código que invalida contas de administrador inativas agora. Uma coisa a notar é que você pode contornar a invalidação de e-mails de contas de administrador inativas configurando invalidate inactive admin email after days para 0. No entanto, não acho que essa seja a solução ideal.

Os e-mails de administradores não devem ser invalidados se a Chave de API do usuário administrador tiver sido usada dentro do período definido pela configuração invalidate inactive admin email after days. É possível que no WordPress você tenha definido o Usuário de Publicação como a conta de administrador que está sendo desativada, mas para a Chave de API esteja usando a Chave de API de Todos os Usuários? Se for esse o caso, faria sentido que a conta de administrador continuasse sendo invalidada.

A menos que haja um motivo para não usar a Chave de API de Todos os Usuários no WordPress, você pode alterar os valores definidos nas configurações de conexão do WP Discourse para usar sua Chave de API de Todos os Usuários e o nome de usuário do usuário do sistema. Esse nome de usuário tem como padrão ‘system’.