Percebi algo estranho sobre o tópico de boas-vindas padrão (fixado) em Sem Categoria: ele não aparece para solicitações anônimas.
Não há nenhum limite para lê-lo que eu possa identificar: o registro está aberto, esta é a categoria padrão Sem Categoria (com os recursos de segurança especiais) e nenhuma configuração limita a visualização do conteúdo.
A visualização JSON mostra a versão renderizada da postagem, mas a versão HTML está vazia:
@hellekin Tenho exatamente o mesmo problema. Se você remover a postagem da política ou desativar o plugin nas configurações, o tópico aparecerá.
Parece haver um bug, e usuários não registrados não conseguem ver o tópico se uma política for usada em uma postagem.
Tenho estado a rastrear o culpado: discourse-policy, como sugerido por @Vraag. Ao contrário do que disse @Vraag, o plugin afeta o tópico que “desaparece” mesmo quando desativado: ter o plugin na lista é suficiente para que o tópico “desapareça” quando o utilizador não está autenticado.
Note que o plugin.rb carrega uma série de dependências antes mesmo de fazer qualquer coisa. Talvez o erro venha de uma dessas dependências que espera um utilizador autenticado.
Não, desative o plugin, edite a postagem que contém o plugin (adicione, por exemplo, uma letra aleatória no início da postagem), salve-a e usuários não registrados poderão ver a postagem.
O markup será exibido como [policy][/policy] e não terá efeito.
Pergunto-me por que apenas desativar o plugin não é suficiente. Você precisa editar a postagem após isso, caso contrário, ele continuará fazendo efeito.
De fato, editar o post enquanto o plugin está desativado, mesmo alterando o conteúdo dentro das tags [policy], é suficiente para restaurar a visualização do tópico.
Parece ser um bug no plugin discourse-policy, @sam?
Estranhamente, reativar o plugin restaura a situação ao normal. Não tenho certeza do que fazer com isso.
Acho que este tópico servirá como referência futura, então aqui está: se algum tópico “desaparecer” da visualização anônima e você tiver uma postagem usando o plugin discourse-policy…
desative o plugin — se isso não funcionar: remova-o do arquivo de configuração YAML do contêiner e reconstrua.
edite a postagem usando a tag [policy] para que ela seja reprocessada e desativada (talvez rebuild HTML seja suficiente?)
O que você quer dizer com “aconteceu alguma mágica”?
Fiz como você disse e obtive isso:
[policy group=testgroup reminder=daily]
Teste
[/policy]
O que não resolve o problema. Mais do que uma correção, isso é… apenas não usar o plugin.
Se eu editar a postagem ou reconstruir o HTML, o plugin funcionará, mas o tópico desaparecerá novamente para usuários não registrados.
edição
Pelo que posso ver, é o mesmo para você. Em seu tópico, a segunda postagem aparece assim:
[policy group=trust_level_1 reminder=daily]
Não utilizamos cookies de terceiros.
[/policy]
Então ainda não temos nenhuma “solução”. A menos que você chame de solução não usar o plugin xD. Você poderia simplesmente ter removido a marcação da segunda postagem; o resultado seria o mesmo.
Como está agora, você só pode usá-lo em categorias privadas, para que usuários não registrados não consigam ver o tópico de qualquer maneira.