Content Marketing
Rules
- Keyword-driven content: every blog post targets a primary keyword — use YepAPI
POST /v1/seo/keyword-researchto find volume and difficulty - CMS setup: use MDX with frontmatter (title, description, publishedAt, tags, slug) — works with Next.js, Astro, or any static site
- Editorial calendar: maintain a
content-calendar.jsonor database table with status (draft, review, scheduled, published), publish date, author, and target keyword - SEO checklist per post: meta title (<60 chars), meta description (<160 chars), one H1, structured headings, internal links, alt text on images
- Trend validation: use YepAPI
POST /v1/seo/keyword-suggestionsto find related topics and long-tail variations before committing to a content piece - Content types: mix informational (how-to, guides), commercial (comparisons, reviews), and transactional (landing pages) — aim for 60/30/10 split
- Publish workflow: draft -> review -> scheduled -> published — use status field to track, never publish without meta tags
- RSS feed: auto-generate from published posts — include full content or summary, publish date, and canonical URL
CMS Integration Patterns
- Headless CMS (Sanity, Contentful): fetch at build time with ISR, webhook to trigger rebuild on publish
- File-based (MDX):
content/blog/directory, frontmatter schema validation at build, dynamic route[slug] - Database-backed: posts table with status enum, slug unique index, full-text search index on title + body
Avoid
- Publishing without keyword research — content without search demand wastes effort
- Missing canonical URLs — causes duplicate content issues
- No internal linking — every post should link to 2-3 related posts
- Skipping meta descriptions — search engines will auto-generate poor ones