Olá,
2. Baseado em TC, experimental. Esperam-se pequenos problemas, mas com bônus adicionais como imagens em destaque em dispositivos móveis e responsividade nas barras laterais… plugin opcional sidecar que adiciona recursos
Componente de Temahttps://github.com/merefield/discourse-topic-list-previews-theme
Adicione o plugin sidecar se quiser mais recursos: - git clone https://github.com/merefield/discourse-topic-previews.git -b "theme_sidecar". Neste ponto, ele é funcionalmente muito, muito semelhante a um plugin.
Atualizei para a versão mais recente do plugin (4.3.1) e do Discourse (2.5.0.beta4) e notei que quase todas as minhas pré-visualizações de listas de tópicos sumiram
Conseguo regenerar a imagem de pré-visualização tópico a tópico, no entanto, isso é a) demorado e b) faz os tópicos subirem para o topo após a atualização.
Existe alguma maneira de regenerar automaticamente as miniaturas dos tópicos?
Adoro muito este plugin — ele fez maravilhas pelo nosso fórum e deixou a aparência fantástica. Também tentei o [edit - era de um autor diferente, então não é relevante para esta discussão]TC, mas achei que ele tem uma aparência bastante diferente e oferece menos opções. Então, na minha opinião, este plugin ainda parece superior, a menos que alguém possa me corrigir?
Mas antes de fazer isso, certifique-se de que isso esteja grande:
Caso contrário, essas postagens não terão suas imagens remotas importadas para o fórum e as miniaturas não serão criadas.
O Componente de Tema está em desenvolvimento e você precisa ter o ‘plugin sidecar’ instalado para ter o conjunto completo de recursos. Ações ainda não são suportadas, mas serão em breve, assim que eu tiver um momento.
Ah, de que forma? Há uma leve aproximação no tamanho dos tiles, mas, exceto pela ausência de ações, deveria ser idêntico (exceto pelo fato de que os tiles vêm com pequenas sombras no TC, o que eu pessoalmente prefiro).
Ei, problema semelhante ao do Ian C; desde a atualização para o Discourse 2.5.0.beta4, com o Topic List Previews 4.4.0, a maioria das miniaturas desapareceu (numa observação lateral, por que não todas?)
O número máximo de dias de idade está muito baixo. Como já mencionei, deveria ser um número alto. 30 significa que qualquer coisa mais antiga que um mês não terá miniatura.
Foi desativado devido a vários problemas relacionados a ele. Além disso, entrava em conflito com modificações personalizadas, se não me engano.
Então, está ativado e eu aumentei o número máximo de dias antigos. O que fazer agora? Não tenho certeza de como essa opção funciona. Isso significa que precisamos esperar que cada imagem seja baixada antes de tentar fazer o backup novamente?
Isso é agora principalmente o comportamento central do Discourse, não do TLP (antigamente era tudo TLP; agora há poucas substituições no plugin relacionadas a isso, pois o suporte a miniaturas já está no núcleo).
Você precisa refazer o bake dos posts novamente, o que criará várias tarefas Sidekiq do tipo UploadHotLinkImages e importará todas elas. Em poucos minutos, as miniaturas começarão a ser preenchidas.
Bem, agora sei por que essa opção foi desabilitada.
Estamos usando o WordPress e a primeira postagem contém HTML completo. O Discourse não tem problema em substituir o HTML de imagens por markdown, mas imagens em markdown não são renderizadas se estiverem cercadas por HTML (ou especificamente, você precisa de pelo menos uma linha em branco acima).
Tenho dois problemas:
Algumas imagens não foram baixadas, provavelmente devido ao atributo srcset (mas tudo bem). As imagens são exibidas corretamente na primeira postagem, mas nenhuma miniatura foi gerada. Isso funcionava antes.
Houve alguma mudança que quebrou algo no plugin, impedindo a geração de miniaturas em postagens que já contêm HTML de imagem? Acredito que já fiz o rebake três vezes e não ajudou. Existe outra maneira de forçar a regeneração da miniatura? Quero dizer, antes, mesmo com a opção desabilitada, uma miniatura era gerada com qualquer imagem ao criar um tópico ou até mesmo após editá-lo; esse comportamento não funciona mais.
Como dito acima, algumas imagens em markdown não são renderizadas.
Tentei ver se havia alguma API do plugin disponível antes da postagem ser processada, mas não encontrei nenhuma.
Acredito que a única maneira é adicionar quebras de linha diretamente na mensagem bruta afetada no banco de dados, através do console do Rails, e fazer o rebake novamente.
Atualmente, estou lutando (não sei Ruby) de alguma forma com base no código fonte do Discourse:
Parece funcionar para um tópico. Ainda não executei para todos os tópicos. Existe uma maneira melhor/mais limpa de corrigir o problema sem fazer isso?
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
Mas toda vez que preciso fazer uma atualização (não está sob meu controle; toda vez que faço uma reconstrução para alterar algo, o fórum é atualizado), eu cruzo os dedos.
Christian, se você está se referindo ao Plugin, eles estão nas Configurações próprias da Categoria (não nas configurações principais de administração).
Adicionei uma nota ao OP para deixar isso mais claro!
Os critérios para a criação de miniaturas são agora em grande parte delegados ao núcleo do Discourse.
Seu problema provavelmente ocorrerá com qualquer componente adicional que use miniaturas do Discourse. Eles deveriam ampliar seus critérios?
Você poderia postar o conteúdo bruto completo de uma postagem problemática? Se eu tiver tempo (não posso prometer nada), verificarei se é trivial ampliar a inclusão. No entanto, estou um pouco relutante em substituir isso, pois o fato de o Discourse ter implementado isso no núcleo é uma boa razão para evitar substituições e confiar mais no núcleo. Isso ajudará na estabilidade do plugin e reduzirá alterações disruptivas. É exatamente esse tipo de personalização que causa problemas nos plugins.
Você sempre pode manter seu próprio fork e personalizar isso você mesmo?
Você pode tentar usar o seletor de miniaturas no editor de Metadados do Tópico para ver se consegue selecionar a miniatura, mas isso é baseado nos mesmos critérios de inclusão. Se a miniatura não aparecer lá, significa que não está atendendo aos critérios, o que serviria como uma boa confirmação.
Se você deseja otimizar a estabilidade, teste as atualizações em um ambiente de staging, relate e resolva quaisquer problemas e, em seguida, atualize a produção.
Aplicar alterações não testadas diretamente na Produção geralmente é uma má ideia.
Fazemos o nosso melhor para garantir compatibilidade, focando nos primeiros 5 dias do mês, mas somos um receptor de mudanças, sem aviso prévio. Portanto, atualize o Discourse no restante do mês por sua conta e risco. E, por favor, teste suas atualizações em um ambiente seguro!