Sou um grande usuário tanto do Discourse quanto do Jekyll e, recentemente, tenho experimentado tentar usar uma instância do Discourse como sistema de gerenciamento de conteúdo para um site estático Jekyll. Acabei de começar a explorar isso e parte da razão para postar neste estágio é apenas ver se alguém mais já fez algo semelhante. Alternativamente, você pode ter uma abordagem melhor e me convencer a não perder tempo com isso ![]()
Como imagino que funcionaria
-
O conteúdo em Markdown seria editado em uma instância do Discourse (oferecendo aos usuários não técnicos uma interface agradável para edição) e pode ser facilmente reeditado, atualizado etc. A barra de ferramentas de formatação e outras vantagens tornam o usuário não técnico muito mais feliz.
-
No site Jekyll, há um arquivo YAML contendo um array de URLs de posts (ou IDs de posts, se decidirmos que a baseUrl do Discourse é sempre a mesma…) que devem ser consultados para obter conteúdo.
-
Um plugin simples do Jekyll executaria um hook para consultar cada URL (a cada reinício do servidor Jekyll?) e buscar os dados. (Para muitas instâncias “abertas” do Discourse, nenhuma autenticação seria necessária. Em algumas circunstâncias, seria necessário fornecer uma chave de API.)
-
O conteúdo JSON é baixado da URL adicionando
.json, e a chaverawdesse objeto JSON contém o Markdown como uma string envolta em aspas duplas. -
Seria necessário adicionar o front matter YAML do Jekyll ao Markdown, além de fazer limpezas como remover as aspas de envoltório e substituir os
\npor quebras de linha. -
O Jekyll compila essas páginas inteiras em HTML, ou você pode usá-las com
{{include file | markdownify }}em outras páginas.
Por que se preocupar?
-
Facilita muito para um editor ou mantenedor não técnico atualizar um site estático.
-
Ideal se você já possui um Discourse e deseja criar um site estático, por exemplo, para uma empresa.
-
Sites estáticos são baratos, confiáveis e seguros.
-
Por que não usar o Page Publishing? Quando tentei, as páginas pareciam exigir muito trabalho para ficarem com boa aparência. O Jekyll oferece mais controle e, claro, permite uma mistura de fontes de conteúdo gerenciadas pelo Discourse e não gerenciadas por ele.
O que a comunidade acha? Vale a pena seguir com isso?