Blog
Page component for rendering blog posts with full content, metadata, and sidebar.
Props
| Prop | Type | Required | Default | Description |
|---|---|---|---|---|
blog | Blogpost | Yes | - | Blog post data from Contentstack |
path | string | Yes | - | Current page path |
Usage
import Blog from '@/components/pages/Blog';
<Blog blog={blogPost} path="/blog/my-post" />Features
- Breadcrumb navigation: Shows breadcrumb trail
- Date display: Published and updated dates with inline reading time (uses entry
datewhen set, otherwise falls back tocreated_at) - Title: Blog content title with configurable tag
- Content actions: Copy for LLM and View as Markdown below the title
- Authors: Author cards with avatars below the title
- Taxonomy tags: Displayed inline near the title metadata and link to subject-filtered search
- Rich content: Renders blog content using RichTextRenderer
- Sidebar: Table of contents
- Additional items: FAQ, Notice, Related Items sections
- JSON-LD: Structured data for SEO
Sidebar Content
- Table of Contents (if H2 headings exist)
Additional Items
Supports rendering:
- FAQ sections
- Notice sections
- Related Items (List component)
Notes
- Extracts H2 headings for table of contents
- Uses Breadcrumb component with generated breadcrumb items
- Supports CSLP for live preview editing
- Uses JsonLd component for SEO