ACACHY

Modelagem de Conteúdo

Como criar Content Types e Entries úteis para consumir no seu site.

Content Types definem a estrutura do conteúdo. Entries são os conteúdos criados a partir dessa estrutura.

Exemplo: Posts

Crie um Content Type chamado Posts com estes campos:

[
  { "name": "title", "type": "text", "required": true },
  { "name": "slug", "type": "slug", "required": true },
  { "name": "excerpt", "type": "textarea" },
  { "name": "cover", "type": "image" },
  { "name": "body", "type": "markdown", "required": true },
  { "name": "publishedAt", "type": "date" }
]

Depois crie entries com dados reais:

{
  "title": "Meu primeiro post",
  "slug": "meu-primeiro-post",
  "excerpt": "Resumo curto para listagens.",
  "cover": "https://example.com/cover.jpg",
  "body": "# Conteúdo em Markdown",
  "publishedAt": "2026-06-22"
}

Tipos de campo

TipoUse para
textTexto curto, título, nome, categoria.
textareaResumos e textos médios.
markdownCorpo de post, páginas longas e descrições ricas.
slugURL amigável, como meu-post.
imageURL de imagem.
fileURL de arquivo.
urlLinks externos.
dateDatas no formato YYYY-MM-DD.
booleanFlags como destaque/ativo.
selectValor escolhido entre opções.
repeatableLista de valores.
relationReferência a outra entry.

Boas práticas

  • Use nomes de campo em inglês e sem espaços: title, slug, body, cover.
  • Sempre inclua um campo slug quando o conteúdo tiver página própria no site.
  • Use markdown para texto longo que precisa de formatação.
  • Use image e file para guardar URLs vindas da área de Mídia.
  • Marque como required apenas o que realmente impede publicação.
  • Evite renomear campos que já são usados pelo frontend.

Status editorial

StatusQuando usar
draftConteúdo em rascunho.
reviewConteúdo aguardando revisão.
approvedConteúdo aprovado, mas ainda não publicado.
publishedConteúdo disponível na API pública.
archivedConteúdo antigo ou removido do uso.

Somente entries published aparecem na API pública.

Relações

Use relation quando uma entry precisa apontar para outra.

Exemplo: um projeto aponta para uma experiência:

{
  "name": "Projeto X",
  "experience": "experiencia-principal"
}

Na importação JSON, use o slug da entry relacionada. No admin, escolha a relação pelo campo correspondente.

On this page