Este guia explica como configurar a opção “seletores de incorporação permitidos” no Discourse. Essa configuração é crucial ao publicar posts a partir de um site externo no Discourse ou ao incorporar comentários do Discourse em um site externo usando JavaScript.
Nível de usuário necessário: Administrador
Conhecimentos básicos de CSS são necessários para usos mais avançados
Ao publicar posts no Discourse a partir de um site externo ou ao incorporar comentários do Discourse em um site externo, você pode encontrar problemas com o botão “Mostrar Post Completo” não carregando o conteúdo correto. Este guia ajudará você a configurar a opção “seletores de incorporação permitidos” para resolver esse problema.
Entendendo o problema
Quando os usuários clicam no botão “Mostrar Post Completo”, o Discourse pode não carregar o conteúdo correto do post do seu site externo. É aqui que a opção “seletores de incorporação permitidos” entra em ação.
Localizando a configuração
Você pode encontrar a opção “seletores de incorporação permitidos” em dois lugares:
- Pesquise por “seletores de incorporação permitidos” na página de configurações do seu site.
- Navegue até Admin > Personalizar > Incorporação e, em seguida, selecione a aba Crawlers.
Identificando os seletores CSS corretos
Para encontrar os seletores CSS apropriados:
- Acesse um post no seu site externo que você publicou no Discourse.
- Abra o inspeção de elementos do seu navegador e examine a estrutura HTML do post.
- Identifique os elementos HTML que cercam imediatamente o conteúdo principal do post.
Por exemplo, em um post típico do WordPress, o conteúdo geralmente está em um div .entry-content dentro de tags article. Nesse caso, você pode usar article .entry-content como seu seletor CSS.
Configurando a opção
Para carregar vários tipos de conteúdo do seu site externo, talvez seja necessário adicionar vários seletores. Por exemplo:
article .entry-content img, article .entry-content p, article .entry-content ul
Este exemplo tem como alvo imagens, parágrafos e listas não ordenadas dentro do conteúdo de entrada do artigo.
Testando e solucionando problemas
Encontrar os seletores corretos pode exigir alguns testes e erros. Tenha em mente:
- O Discourse armazena em cache o conteúdo de posts externos por 10 minutos, portanto, as alterações podem não ser visíveis imediatamente.
- Para contornar isso, teste com vários posts ou limpe o cache em um site de desenvolvimento usando
Rails.cache.clearno console do Rails.
Lidando com imagens
Se você estiver tendo problemas para carregar imagens do seu site, certifique-se de que seus seletores CSS incluam os elementos de imagem apropriados. Por exemplo:
article .entry-content img
Este seletor tem como alvo imagens dentro do conteúdo de entrada do artigo.
Considerações adicionais
- A opção “seletores de incorporação permitidos” se aplica tanto a posts publicados via API quanto a posts carregados com o script de incorporação do Discourse.
- Você pode precisar ajustar os seletores com base na estrutura e nos tipos de conteúdo específicos do seu site.
- Lembre-se de salvar suas alterações após atualizar a configuração.


