Appearance
Metadata
- getPageMetadata(pageKey) for base pages
- getBlogArticleMetadata(post) for posts (title, description, canonical, OG/Twitter)
JSON-LD
- getPageSchemaGraph('blog', { post }) returns a graph including:
- WebSite (@id, publisher, search action)
- Organization (@id, logo ImageObject)
- WebPage (@id, url, breadcrumb, primaryImageOfPage)
- ImageObject (primary image)
- BreadcrumbList (Blog → Category → Article)
- Article (@id, url, headline, author @id, publisher @id, dates, description, keywords, wordCount, image)
- Person (@id, name, url) when author present
Conventions
- Language: en-CA (IN_LANGUAGE)
- IDs: use helpers to generate stable @ids and urls
- Strings: blog UI labels in apps/marketing/src/utils/strings.ts