Problemas com comentários Ghost+Discourse (também na migração do WordPress)

Estou no meio de tentar migrar meu blog do WordPress (com comentários do Discourse) para o Ghost (com comentários do Discourse) e, embora tenha configurado os comentários usando as instruções em Integração Oficial Ghost + Discourse, encontrei vários problemas para resolver, se você me permitir:\n\n1. Nas configurações de incorporação, eu não marquei "Tópicos importados ficarão ocultos até que haja uma resposta", mas quando vou para uma nova postagem e ela cria o tópico correspondente, ele fica realmente oculto até que um comentário seja feito. Existe alguma maneira de evitar isso e ter os tópicos criados e listados conforme são publicados no Ghost?\n\nAlém disso, se eu entendi mal o que essa configuração deveria fazer, o que ela realmente faz?\n\n(Apesar de ter sido aconselhado de outra forma, vários dos meus leitores insistem em usar a comunidade Discourse como fonte de novas postagens, em vez do próprio blog, e eu preciso apoiá-los.)\n\n2. Quando o blog era um blog WordPress, eu usava o plugin WordPress Discourse. Quando ele criava tópicos para corresponder às postagens do blog, eles chegavam ao Discourse como se links tivessem sido postados lá, como pode ser visto no tópico do meio aqui:\n\n

\n\nExiste alguma maneira de modificar o código/configurações de incorporação para recuperar esse comportamento? Era um link útil do índice e um distintivo claro de postagens de "comentários" versus postagens de "comunidade".\n\n3. Mais importante, quando vou para uma postagem que tinha comentários existentes do Discourse (via plugin WordPress), a seção de comentários na página fica presa em "Carregando Discussão…" para sempre. Eu esperava, e é claro que é crucial, que tais incorporações se ligassem ao tópico existente correspondente a essa URL. Alguém descobriu uma maneira de fazer isso acontecer?\n\n(Veja, por exemplo, Spooooky e seu tópico correspondente Spooooky - General - The Eldraeverse .\n\nQualquer ajuda com estes seria muito apreciada!

Eu precisaria analisar o código mais detalhadamente, mas acho que, do lado do Discourse, você só precisa verificar se a URL no registro de incorporação (não me lembro exatamente como se chama) tem a mesma URL que seu novo site passa para ele.

Portanto, acho que, desde que o discourseEmbedUrl no novo site incorporado corresponda ao novo (ou você o altere no registro no Discourse), tudo ficará bem.

  DiscourseEmbed = {
    discourseUrl: 'https://discourse.example.com/',
    discourseEmbedUrl: '[EMBED_URL](http://example.com/blog/entry-123.html)',
    // className: 'CLASS_NAME',
  };
1 curtida

Infelizmente, pelo que posso verificar, é. Eu olhei a página do blog nas ferramentas de desenvolvedor e vi isto onde os comentários do Discourse vão:

mostrando um parâmetro discourseEmbedUrl no script de
https://eldraeverse.com/2024/10/28/spooooky/

e no tópico do Discourse, estou vendo o mesmo URL tanto no link no topo do tópico quanto na inserção “Originalmente publicado em:” na primeira postagem do tópico. (Não tenho certeza se há algum outro lugar específico que eu deva procurar no Discourse para o registro de incorporação original, mas tudo o que posso ver no próprio tópico corresponde.)

Editar: Para esclarecer, eu estava usando anteriormente o plugin WP Discourse, e como ele não é configurado usando a configuração de incorporação no Discourse, não posso simplesmente ir e ver a configuração antiga, infelizmente. Mas certifiquei-me de que todos os URLs das páginas de tópico no novo blog Ghost não mudariam do blog WordPress, então tudo deveria ser o mesmo automaticamente.

No Rails, você pode olhar para

 TopicEmbed.all

ou

 TopicEmbed.pluck(:topic_id, :embed_url)

para ver o que está lá e se isso corresponde ao seu, você deve estar pronto para ir, mas não está carregando, o que, eu acho, sugere que você não permitiu que seu outro site fizesse incorporações em seu Discourse.

No primeiro, eu acho que não tenho acesso para executar isso, já que o meu Discourse é hospedado por vocês, ou pelo menos não sei como faria isso.

No segundo - não tenho certeza se entendi. Minha configuração de embedding é:

o que deve corresponder aos URLs do site antigo e do novo site, certamente? Exceto pelo slug específico da postagem no final, os URLs das postagens que falham em carregar o tópico de comentários são idênticos aos das postagens que o fazem com sucesso?

Ah. Desculpe. Eu penso principalmente em auto- (ou minha) hospedagem. Você pode ser capaz de fazer algo assim com o plugin explorador de dados se você estiver em hospedagem Business.

Você pode tentar ativar incorporar qualquer origem e ver se isso resolve. No pior dos casos, eu acho, você deve conseguir carregar a incorporação e ela não terá os comentários que você espera ver.

Ah, um humilde usuário pro bono. A escrita de ficção científica, infelizmente, não é tão lucrativa quanto eu gostaria. :smile:

Tentei embed any origin, mas, infelizmente, nenhuma mudança no comportamento.

(Eu também dei uma olhada no código-fonte do plugin WP Discourse, que parece estar apenas se comunicando com a API do Discourse para fazer seu trabalho e não usando o suporte de incorporação normal, o que, agora que vi como as incorporações do Discourse se parecem no Ghost, não é surpreendente - os comentários no antigo WordPress pareciam e se comportavam de maneira diferente.

Então, agora tenho que me perguntar se há alguma URL de incorporação registrada para esses tópicos no lado do Discourse - embora isso levante a questão de por que eu não estou simplesmente vendo novos tópicos (incorporados) aparecerem agora em vez dessa falha - e se há alguma maneira de eu adicionar uma a eles?)

1 curtida

Fiz um experimento rápido: se eu excluir um tópico criado pelo plugin WP Discourse, visitar posteriormente o mesmo post no blog Ghost faz com que um novo tópico para esse post seja criado via embedding, então evidentemente os tópicos do WP Discourse são capazes de impedir o funcionamento dos embeds, mesmo que eles não sejam exibidos.

Claro, essa não é uma solução viável, mas é um ponto de dados.