Novas mensagens podem aparecer no topo em vez da parte inferior?

Olá a todos,

Estou migrando uma comunidade online para um novo software de fórum. São 15 anos de posts (55.000 mensagens). O fórum antigo é o IP Board. Todas as mensagens estão em um único fluxo contínuo. Não temos necessidade de tópicos individuais.

O Discourse consegue…

  1. Mostrar as novas mensagens no topo em vez de aparecerem no final.
  2. Lembrar a última posição de visualização do usuário?

Ou seja, quando um usuário acessar o Discourse, é possível que a última posição “não lida” seja mantida, de modo que ele veja onde parou de ler? E então o usuário rola para cima para ler as novas mensagens?

Gosto muito do recurso de resposta inline do Discourse, mas não precisamos criar novos tópicos. Vamos viver e respirar inteiramente dentro de um único tópico.

Obrigado.

1 curtida

Você tem 55.000 posts em um único tópico? :thinking:
Tipo um post de comentário? E a ordem invertida.
Mas o “primeiro” post é o post principal do tópico; não sei se não é possível alterar isso aqui.

A pergunta #2 está completa com o Discourse: o sistema “lembra” onde o usuário estava lendo e, quando ele volta, coloca-o na última mensagem lida.

3 curtidas

Obrigado pela resposta. O que é uma postagem de comentário? Quando olho para os fóruns de exemplo do Discourse e entro em um tópico, todas as novas postagens aparecem no final.

No nosso fórum, você pode clicar em “nova postagem” e ela será adicionada no topo. Você também pode clicar em “responder”, que é o mesmo que uma nova postagem, mas adiciona o texto “respondendo ao Usuário4532” no topo da nova postagem. Tudo é exibido em um único fio longo, com as novas postagens no topo.

Colocar as novas postagens no final, como é normal no Discourse, talvez seja aceitável, mas eu não quero ter que rolar para baixo 55.000 postagens toda vez que entro no fórum. É possível colocar as novas postagens no topo?

Você não precisa, ele lembrará onde você parou. E você sempre pode pressionar shift-L em um tópico para ir ao primeiro post não lido.

4 curtidas

Acho que nenhuma das respostas aborda o elefante na sala: pelo que entendi de The MEGATOPIC: public good, or public menace?, não há a menor chance do Discourse lidar com 55.000 respostas em um único tópico e ficar feliz (leia-se: performático) com isso.

4 curtidas

A resposta à pergunta principal é não — novas respostas sempre aparecem no final. No entanto, a posição de leitura é sempre salva para usuários logados.

3 curtidas

O que há de tão especial em tantos posts, ou especificamente no Discourse, em comparação com outros softwares de fórum?

Quero dizer, no phpBB ou vBulletin isso é bastante direto, pois no momento da leitura apenas um número limitado de posts é exibido de uma vez.

Por exemplo, em um fórum alemão, há 200 mil posts em este tópico:

Do ponto de vista técnico, ou seja, no armazenamento dos dados, não deveria haver muita diferença entre armazenar 200 mil tópicos com 1 post cada, ou 1 tópico com 200 mil posts. No banco de dados SQL, trata-se apenas de um ID que indica a qual tópico um determinado post pertence. Portanto, ambos os cenários são bastante semelhantes.

Então, o único “problema” é o seguinte? → o Discourse parece carregar muitos posts de uma vez, já que o post mais recente está no final, ou seja, para exibi-lo, tudo precisa ser carregado? Isso poderia facilmente causar um problema, especialmente em relação à renderização no navegador (excedendo a memória no lado do usuário)?

1 curtida

Comportamento padrão: Novas respostas sempre aparecem no final

Bem, não estou dizendo que isso seja possível — não sou especialista em programação front-end — mas ACHO que, se usarmos JavaScript para manipular o DOM, poderíamos (?) alterar a ordem em que os objetos são exibidos.

Não tenho o conhecimento ou a experiência para afirmar que poderíamos criar um componente de tema… Não sei se os especialistas que desenvolvem esse tipo de coisa poderiam fazer um gratuito, ou talvez seja necessário solicitá-lo no Marketplace para obtê-lo (se for possível, claro).

É claro que, com mais de 20 respostas, isso ficaria insano, porque inverter a ordem no front-end significa que a página precisa carregar todas as respostas primeiro e, só então, o JavaScript manipula os objetos para inverter a ordem deles, o que causaria um atraso significativo quanto mais respostas o tópico tiver.

Uma coisa é exibir as informações, e outra é fazer com que, em tempo real, quando um usuário responder, a resposta seja “aninhada” acima das outras, e não abaixo delas, como é o comportamento padrão do fórum. Não tenho certeza se isso é possível. :thinking:

1 curtida

As necessidades da sua comunidade provavelmente serão muito melhor atendidas por um programa de chat. Não tenho conhecimento de nenhum que permita que as mensagens apareçam no topo, mas eles lidam muito melhor com o padrão de “todas as discussões no mesmo fluxo” do que um fórum.

Algumas opções para considerar: Zulip, Mattermost, Discord, Slack.

3 curtidas

Fechado em favor de Can discourse display topic replies in reverse order?