YAML front matter: metadados no topo de um arquivo Markdown

YAML front matter

YAML front matter no Markdown: sintaxe, campos e exemplos | We.Inc

O que é YAML front matter, as regras do ---, os campos que Jekyll, Hugo, Eleventy e Astro leem, e um separador que mostra os metadados e o corpo do seu próprio arquivo.

Front matter é um bloco de YAML bem no topo de um arquivo Markdown, aberto e fechado por uma linha de três hifens (---). Os geradores de sites estáticos o leem como os dados da página, como título, data, layout e tags, e renderizam tudo abaixo da linha de fechamento como o conteúdo da página.

Suporte a front matter em quatro geradores de sites estáticos populares

O front matter transforma um arquivo Markdown simples em uma página com metadados, e um único hífen fora do lugar o quebra. Cole um arquivo no separador para ver exatamente onde os metadados terminam e o conteúdo começa, e quais campos de nível superior ele encontrou, antes que o seu build reclame.

Perguntas frequentes

O que é front matter no Markdown?

São metadados escritos no topo de um arquivo Markdown entre duas linhas delimitadoras. O próprio Markdown não os define; os geradores de sites estáticos e as ferramentas de conteúdo adotaram a convenção e os leem como dados antes de renderizar o resto.

O front matter precisa ser YAML?

YAML é o padrão comum, mas não a única opção. O Hugo aceita TOML entre linhas +++ e JSON entre chaves, o Eleventy aceita ---json e ---js, e o Astro também aceita TOML.

Por que a minha página mostra o front matter como texto?

Geralmente há algo antes do primeiro ---, falta o --- de fechamento ou a linha de abertura tem caracteres a mais. O separador acima aponta os dois últimos casos na hora.

O front matter pode ficar vazio?

Sim. No Jekyll, um par vazio de linhas --- ainda marca o arquivo para processamento, e é assim que arquivos CSS ou de feed têm as tags Liquid renderizadas sem nenhum metadado.

Como leio o front matter no meu próprio código?

Divida o arquivo nos delimitadores, interprete a primeira parte com uma biblioteca YAML e passe o resto para o seu renderizador de Markdown. O Eleventy faz isso com o pacote gray-matter, que você também pode usar diretamente no Node.

As regras dos delimitadores

Campos que vale definir em toda página

Exemplos de front matter

Um post de blog (YAML)

Um post típico: título entre aspas porque contém dois-pontos, uma data, uma lista de tags e um campo personalizado de autor.

O mesmo post com front matter em TOML (Hugo)

O Hugo lê +++ como front matter em TOML. Os valores personalizados ficam na chave params.

Separador de front matter

Cole um arquivo Markdown. O separador encontra o bloco de front matter, lista os campos simples de nível superior e mostra o corpo que será renderizado.

Arquivo Markdown

Front matter ({f})

Campos de nível superior encontrados

Nenhuma linha simples key: value no nível superior.

Corpo

Sem front matter: a primeira linha não é --- nem +++, então o arquivo inteiro é tratado como conteúdo.

O bloco aberto com {d} nunca é fechado. Adicione uma linha {d} correspondente depois do último campo.

Front matter encontrado e fechado.

Campo

Valor como foi escrito

Comece grátis · Sem cartão de crédito

Relacionados: Guias

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site