Olá,
Desde a versão mais recente do Discourse 2.5.0, estou com problemas na geração de miniaturas.
Parece que as miniaturas agora são geradas pelo núcleo, o que resultou na exclusão de todas as miniaturas.
Tentei várias operações para restaurá-las e vou explicar as situações em que não funciona.
Nota: provavelmente há um bom motivo para essa mudança, mas seria muito bem-vindo não introduzir uma mudança repentina de comportamento que quebre funcionalidades sem oferecer uma maneira de se preparar, com um guia de atualização e/ou uma opção para aderir a essa mudança, por favor. ![]()
Contexto
- Discourse 2.5.0 beta4 (faeb5793ba)
- Plugin Topic List Preview 4.4.0
- Posts do WP-Discourse publicados como estão (HTML completo) nos tópicos do Discourse (primeira mensagem).
Sobre o conteúdo de um post, este é um exemplo (formatado para você):
Conteúdo
HTML da imagem como código para conveniência:
<img
width="150"
height="84"
src="https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-150x84.jpg"
class="attachment-thumbnail size-thumbnail"
alt=""
srcset="
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-150x84.jpg 150w,
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-300x169.jpg 300w,
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-1200x675.jpg 1200w,
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-1536x864.jpg 1536w,
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-2048x1152.jpg 2048w,
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-788x443.jpg 788w,
https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית.jpg 1280w
"
sizes="(max-width: 150px) 100vw, 150px"
/>
<div data-wp>
<a
href="https://www.banggood.com/Xiaomi-Redmi-Router-AC2100-2033Mbps-2_4G-5G-Dual-Band-Wireless-Router-6High-Gain-Antennas-128MB-OpenWRT-WiFi-Router-p-1614038.html"
target="_blank"
><img src="https://zuzu.deals/wp-content/uploads/2020/01/5e3128b4e5da7-150x150.jpg"/>
</a>
<div>
<div data-buy>
<a
href="https://www.banggood.com/Xiaomi-Redmi-Router-AC2100-2033Mbps-2_4G-5G-Dual-Band-Wireless-Router-6High-Gain-Antennas-128MB-OpenWRT-WiFi-Router-p-1614038.html"
target="_blank">קנייה
</a>
<span data-clipboard-text="BG38b2ac" data-coupon>BG38b2ac</span><i></i>
</div>
<div data-price>$43.99</div>
</div>
</div>
<hr />
<p>
<small>
פורסם ב: <a href="https://zuzu.deals/%d7%a7%d7%95%d7%a4%d7%95%d7%9f-%d7%91%d7%9c%d7%a2%d7%93%d7%99-%d7%a8%d7%90%d7%95%d7%98%d7%a8-%d7%97%d7%96%d7%a7-%d7%95%d7%97%d7%93%d7%a9-%d7%a9%d7%9c-%d7%a9%d7%99%d7%90%d7%95%d7%9e%d7%99-xiaomi-re-2/"></a>
</small>
</p>
<br />
<p>נעים להכיר!</p>
Antes da atualização do Discourse
O TLP funcionava sempre bem em nossas imagens externas, tanto na criação quanto na edição de tópicos.
No entanto, tínhamos a opção download remote images to local (baixar imagens remotas para local) desativada devido a um problema de markdown.
Problema de renderização de markdown
Este não é o principal problema e ainda ocorre após a atualização do Discourse; aqui está uma explicação.
Quando o Discourse baixa e substitui o HTML de uma imagem pela sua sintaxe markdown – no nosso contexto, isso resulta em:
[...]<a href="<link_here>" target="_blank"></a>[...]
O Discourse não consegue renderizar a imagem
Imagem

Para corrigir o problema, você precisa de pelo menos uma linha em branco acima:
[...]<a href="<link_here>" target="_blank">
</a>[...]
Seria possível permitir a renderização de imagens markdown cercadas por HTML, por favor?
Após a atualização do Discourse
- Todas as miniaturas foram excluídas.
- Todas as imagens são exibidas corretamente no conteúdo do tópico.
- Devido a esse recurso (FEATURE: Include optimized thumbnails for topics (#9215) · discourse/discourse@03818e6 · GitHub, eu acho), fomos forçados a ativar a opção
download remote images to local, pois parece que não é mais possível obter uma miniatura de um link externo…
download remote images max days oldestá definido para o máximo, 10000.
A partir disso, me disseram para rebakear todos os posts para baixar a imagem. E é aí que fica estranho.
rake posts:rebakenão teve muito efeito (pelo menos não na primeira mensagem de um tópico, mas acionou muitosPullHotlinkedImages).
1.1. Observando alguns tópicos, achei que o HTML da imagem com atributosclassousrcsetfosse a causa, então tentei normalizar todas as imagens com o seguinte código (não sei Ruby) – Isso ajudou em alguns tópicos.
1.2. No entanto, devido ao problema de markdown, precisei adicionar quebras de linha para corrigir. – Pelo menos para esses tópicos, a miniatura funcionou.
Código
Post.where(post_number: 1)
.where("raw LIKE '%<img%/>%'")
.each
do |post|
post.raw.gsub!(/<img[^>]+(src="[^"]+")[^>]+\/>/, "<img \\1 />")
post.save!(validate: true)
post.rebake!
end
Post
.where(post_number: 1)
.where("raw LIKE '%upload://%'").each
do |post|
post.raw.gsub!(/(!\[.*upload:\/\/.*\))/, "\n\n\\1")
post.save!(validate: false);
post.rebake!
end
- Editar manualmente (sem alterar o conteúdo, apenas salvando) um tópico ignorado funciona na maioria das vezes. A imagem é baixada.
2.1. Alguns tópicos permanecem ignorados mesmo após uma edição. Posso ver quePullHotlinkedImagesé acionado, mas nenhuma imagem é baixada. (como com este HTML<img src="https://zuzu.reviews/wp-content/uploads/2020/05/HiZERO-VS-BISSEL-VS-שואב-אלחוטי-VS-שואב-רובוטי-VS-מגב-ודלי-VS-מטאטא-VS-ספונגה-חשמלית-150x84.jpg" />, link) - Após normalizar e ver que uma edição pode ajudar a baixar a imagem, tentei executar
rake posts:rebakevárias vezes – sem efeitos. - Então tentei usar o console do rails de forma semelhante ao código acima, mas com id de tópico específico e apenas
post.rebake!– sem efeitos. - Nem todas as imagens de um tópico são sempre baixadas..
- @Canapin me indicou Download remote images from older posts? - #3 by vinothkannans ; tentando rebakear todos os posts agora. – Não ajudou, infelizmente.
É simplesmente insano por que algumas imagens funcionam e outras não. Não acho que seja uma questão de critério. As configurações de imagem estão altas. Realmente não entendo qual é a lógica por trás disso, parece aleatório.
Atualmente, ainda temos muitas miniaturas faltando. Provavelmente a maioria delas pode ser corrigida manualmente com edição/salvamento, mas isso não é viável. Estou fazendo isso para um cliente e já perdi muito tempo tentando corrigir o problema.
Não me importo em ter imagens carregadas como miniaturas, mas:
- Você pode me dizer se há razões específicas pelas quais as imagens não são baixadas? Existem configurações que podem ajudar? Precisamos de algo? Como depurar?
- Existe uma maneira de forçar o download delas de forma semelhante à edição/salvamento pelo console?
- Vocês podem permitir a renderização de imagens markdown se estiverem cercadas por HTML?
Espero ter sido preciso o suficiente na descrição do problema.
Obrigado antecipadamente por qualquer ajuda e solução.







(sistema substituindo imagem por markdown)