Motor de Blog
Regras
- MDX para conteúdo:
content/blog/[slug].mdx— frontmatter com título, descrição, publishedAt, updatedAt, tags, imagem - Roteamento dinâmico:
app/blog/[slug]/page.tsx— buscar MDX no momento da build, gerar parâmetros estáticos a partir do sistema de arquivos - Feed RSS: gerar
feed.xmlem/rss.xml— incluir título, descrição, pubDate, link, guid para cada post — regenerar na build - Sitemap: gerar
sitemap.xmlcom todas as URLs do blog, datas de última modificação, changefreq — enviar ao Google Search Console - Dados estruturados JSON-LD: esquema
Articleem cada post — headline, datePublished, dateModified, autor, imagem, publisher - Posts relacionados: correspondência baseada em tags — encontrar posts que compartilham 2+ tags, fallback para os mais recentes — exibir 3 posts relacionados
- Tabela de conteúdos: gerada automaticamente a partir de cabeçalhos H2/H3 no MDX — renderizar como barra lateral fixa no desktop
- Paginação: 10 posts por página,
/blog/page/[num]— incluir links anterior/próximo para SEO
Esquema do Frontmatter
title: "Título do Post"
description: "Meta descrição com menos de 160 caracteres"
publishedAt: "2025-01-15"
updatedAt: "2025-02-01"
tags: ["nextjs", "react"]
image: "/blog/post-title/cover.jpg"
author: "Nome do Autor"
Padrão do Feed RSS
Servir a partir de uma rota de API ou gerar na build. Campos obrigatórios: <title>, <link>, <description>, <item> por post com <guid>, <pubDate>.
Evitar
- Ausência de
publishedAtno frontmatter — quebra RSS e ordenação - Não enviar sitemap — Google não descobrirá novos posts rapidamente
- Pular JSON-LD — perde elegibilidade para rich snippets
- Codificar posts relacionados manualmente — usar correspondência de tags para relevância automática