Olá, qualquer pessoa que clicar nas minhas páginas de Termos de Serviço, FAQ ou Privacidade recebe apenas uma página em branco com um ponteiro de ‘ocupado’ girando permanentemente.
Como posso corrigir isso?
Como posso disponibilizar essas informações e chamar a atenção de qualquer usuário potencial que visite o URL do site, mas ainda não tenha se cadastrado para acesso com senha?
No momento, um visitante vê apenas o diálogo básico de login como página inicial, sem nenhuma indicação, antes de se cadastrar, sobre se o fórum é relevante para ele ou quais condições se aplicam.
Agora que o site e o e-mail estão totalmente configurados e funcionando no domínio do fórum, estou relutante em arriscar estragar tudo redirecionando o domínio para outra página da web hospedada separadamente como página inicial e movendo o fórum para um subdomínio ou algo similar — como já vi ser sugerido. Também estou relutante em gastar US$ 47 por ano com um plugin pago para adicionar um pouco mais de informações à página inicial do domínio.
Como uma solução alternativa desagradável e pouco atraente, adicionei um guia destinado a quem está considerando se cadastrar, personalizando o próprio texto da caixa de diálogo de login.
Se eu der o passo difícil e migrar o fórum para um subdomínio, quanto sofrimento, como iniciante, devo esperar em:
configurar uma página inicial no domínio principal, que também seja hospedada dentro do meu droplet da Digital Ocean? (para não ter que pagar por outro serviço)
garantir que o envio e recebimento de e-mails via Mailgun e todas as funcionalidades continuem sem interrupções?
Um problema subjacente é que eu preferiria muito administrar e atualizar o conteúdo da página inicial a partir do próprio painel administrativo, além de incluí-la nos backups automáticos, o que parece bastante difícil de fazer se não estiver usando o mesmo domínio, quanto mais o mesmo software.
Gostaria muito de ver pelo menos alguma funcionalidade simples de página inicial disponibilizada no núcleo do Discourse, para aqueles que não querem ou precisam de outro site para administrar.
Isso ocorre tanto para usuários logados quanto para anônimos (não logados)? Se sim, isso aponta para um problema fundamental que não deveria ser afetado por ajustes de domínio ou subdomínio.
No nosso caso, definitivamente queremos ter o Discourse no domínio raiz, pois é o centro absoluto do que fazemos. Então, eu também tenho buscado a melhor maneira de otimizar /admin/customize/site_texts/login_required.welcome_message e os outros elementos dessa página.
A boa notícia é que você pode usar todo o Markdown usual, etc., nesse texto; isso permite muito mais flexibilidade. Eu faço isso escrevendo o conteúdo em um tópico em Staff e depois copiando-o para a parte de personalização. @codinghorror - seria extremamente útil para pessoas na nossa situação que isso se comportasse da mesma forma que as páginas de FAQ, etc.
Além disso, você pode fornecer links para as páginas de Privacidade e Termos de Serviço (que devem ser visíveis para usuários anônimos) usando o Componente de Tema Custom Header Links (com algum CSS extra). Claro, não estou satisfeito com isso e quero que os anônimos também vejam as páginas de FAQ e Sobre (mantendo o fórum privado), por isso peço ajuda:
Isso é verdade para usuários logados. Usuários que não estão logados não têm como ver nada além da caixa de diálogo de login (a menos que eu esteja perdendo algo?)
Muito estranho que você não consiga acessar nenhuma dessas páginas para pessoas logadas. Você ainda tem os tópicos onde eles estão localizados na sua categoria #admin?
Ah, isso pode ser a dica. Não tenho uma categoria ‘Admin’.
Fiz uma limpeza das categorias que pareciam vazias e, de resto, não eram suficientemente diferentes das outras. Obviamente, não estavam vazias afinal.
Supondo que eu possa copiar o conteúdo desses tópicos deste site e recriá-los em uma das categorias restantes no meu site, como posso reassociá-los aos seus respectivos itens de menu? Ou devo apenas recriar a categoria Admin?
Desculpe, eu quis dizer Staff, acho. Eu mexi com isso na nossa instância também, mas salvei os tópicos. Esses tópicos são chamados de “FAQ/Regras” (ID do tópico 5), “Termos de Serviço” (ID do tópico 4) e “Política de Privacidade do nome do seu fórum” (ID do tópico 6).
Suspeito que haja algo especial neles — apenas administradores podem editar a primeira postagem em cada um, independentemente das configurações da categoria. Pode ser um pouco complicado recriá-los. Boa sorte!
A categoria #Staff nunca foi excluída, mas parece que os tópicos foram de alguma forma.
Quanto ao conteúdo desses tópicos, especialmente os de Termos de Serviço e Política de Privacidade, apenas copiar o que encontrei neste site Discourse Meta não parece funcionar, pois ambos são fortemente tendenciosos/específicos para jurisdição e contexto que não se aplicam ao meu fórum. Existem fontes mais gerais (mesmo relevantes para a Nova Zelândia?) das quais poderíamos nos basear?
Também confirmando que simplesmente adicionar a categoria ‘Admin’ e criar um tópico ‘FAQ’ nela não funcionou: o link FAQ ainda gera apenas uma tela em branco e o ponteiro do mouse girando.
OK, além disso, ao analisar as URLs usadas na FAQ original, sugere-se que o tópico da FAQ reside diretamente em uma subpasta chamada ‘faq’ — por exemplo:
https://meta.discourse.org/faq#civilized
Já se eu criar um novo tópico de FAQ e colar o conteúdo, ele vai para algo assim:
https://nzarchitecture.net.nz/t/faq/15074
Como posso criar a subpasta correta ou colocar os tópicos nela? Não há nada que eu reconheça como uma estrutura de pastas convencional para o conteúdo do site do Discourse ao me conectar ao meu Droplet da Digital Ocean via FileZilla. Então, imagino que haja alguma artefato obscuro do Ruby on Rails gerando essas URLs/caminhos.
Encontrei uma solução alternativa por enquanto, que é usar qualquer URL gerada ao recriar esses tópicos ausentes e colá-los nos campos relevantes de ‘fonte externa alternativa’ nas Configurações/Configurações Legais do painel.
Ainda seria bom organizar as coisas corretamente, se houver uma maneira — não sei quais outras implicações podem surgir de uma configuração original danificada ou ausente.
Esses são incorporados (definidos pelo sistema) para tópicos nativos. Restaurá-los como estavam antes da exclusão provavelmente exigirá manipulação direta do PostgreSQL.
Obrigado, Stephen. Infelizmente, não saberia nem por onde começar a manipular o PostgreSQL.
Seria até possível para mim excluí-los se fossem integrados ao sistema e não estivessem contidos em nenhuma categoria diretamente editável ou acessível pelo usuário?
Note também que, mesmo quando esses tópicos existiam para mim, eles pareciam ignorar as informações de Campos obrigatórios nas Configurações fornecidas durante a configuração para Nome da Empresa, Lei Aplicável e Cidade para Disputas — então algo já estava quebrado.
E tudo isso é, em última análise, juridicamente irrelevante, se um usuário não tem como ver os Termos de Serviço de qualquer maneira antes de se cadastrar — o que pode ser um problema razoavelmente fundamental para todos os fóruns Discourse protegidos por senha?
Obrigado, Nathan.
É interessante/encorajador que eu possa vincular a isso sem precisar fazer login.
Gostaria muito de ter links funcionais para FAQ, Termos de Serviço etc. no diálogo de cadastro/login, mas, até agora, para mim, todos os links apenas geram uma resposta de ‘você não tem permissão’ para usuários que não estão cadastrados.
Você pode fazer isso com outra solução alternativa:
Faça com que todas as suas categorias sejam visíveis apenas para o trust_level_0 (ou mais restrito), exceto aquela que contém suas postagens de informações (faça-a visível para todos). E, em seguida, torne seu fórum público. Claro, eles não chegarão mais à página de login e essa é uma maneira bastante radical de alcançar esse objetivo.
Alguém pode, por favor, orientar sobre como restabelecer os tópicos legais internos e seus IDs (ou até mesmo apenas colocar posts editáveis em branco nos URLs corretos/originais de cada tópico legal interno), via PostgreSQL ou de outra forma?
Apenas criar novas versões com o mesmo nome na Categoria de Equipe não funciona — os URLs resultantes são diferentes e não podem ser acessados por um novo usuário durante o cadastro (clicar no link no diálogo de cadastro apenas os redireciona de volta para o diálogo de login).
OK, parece que ninguém pode ajudar com isso. Recriar o fórum do zero ajudaria, seguido pela restauração de um backup salvo do banco de dados? Ou restaurar o backup apenas propagaria as exclusões novamente?
Em algum lugar nesse banco de dados está o pequeno pedaço de dados que você precisa alterar para fazer esses posts aparecerem novamente. Na verdade, aqui:
Na tabela ‘topics’, a coluna deleted_at terá um carimbo de data/hora para os IDs 4, 5 e 6. Se você puder excluir esses registros (substituir por nada/vazio), tudo voltará a funcionar.
Sei que é possível fazer isso em Ruby/Rails, mas isso está além das minhas habilidades até agora — porém, para alguém com essas habilidades, seria um trabalho de 5 minutos. Talvez quem configurou sua instância possa ajudar.
Obrigado, Nathan.
Infelizmente, configurei tudo seguindo o tutorial oficial, com pouca compreensão.
Tive um desenvolvedor que migrou algum material para mim no início e entrei em contato com ele sobre isso há uma semana, mas até agora não obtive resposta.
No entanto, estou me perguntando se existe um aplicativo de desktop de código aberto que se conecte e permita visualizar e editar tabelas do PostgreSQL no Digital Ocean? Ou até mesmo um que possa ler e editar um backup baixado, que eu então restauro?
** Edição - relendo as respostas a uma consulta semelhante, o consenso parece ser usar Ruby para qualquer coisa, em vez de um aplicativo de banco de dados com uma interface gráfica amigável.
Dito isso, quais seriam os comandos que eu emitiria no PuTTY para acessar o banco de dados e deletar os timestamps para os tópicos com IDs 4, 5 e 6 na coluna deleted_at da tabela topics? (após o backup ser feito)?