moonming opened a new pull request, #2018: URL: https://github.com/apache/apisix-website/pull/2018
## Summary - Adds `BlogPosting` JSON-LD structured data to every blog post page, enabling Google rich results (article snippets, author info, publish dates) - Injects the schema via `<script type="application/ld+json">` inside the existing `<Seo>` (react-helmet) component in `BlogPostPage` - Uses metadata already available in the component (title, description, date, authors, tags, image, permalink) — no new data sources needed ## What's included in the JSON-LD | Field | Source | |-------|--------| | `headline` | `metadata.title` | | `description` | `metadata.description` | | `datePublished` | `metadata.date` (ISO 8601) | | `image` | `assets.image` or `frontMatter.image` | | `author[]` | `metadata.authors` (name, url, imageURL) | | `keywords` | `metadata.tags` labels, comma-separated | | `publisher` | Static: Apache APISIX organization + logo | | `mainEntityOfPage` | `metadata.permalink` | ## Why Blog posts currently only have microdata attributes (`itemType`, `itemProp`) on HTML elements. Google strongly prefers JSON-LD for structured data, and `BlogPosting` schema enables rich results like: - Article snippets with author photo and publish date - Better visibility in Google Discover - Enhanced appearance in News results ## Files changed - `blog/src/theme/BlogPostPage/index.tsx` — added JSON-LD script tag inside `<Seo>` component Since `blog/src/` is shared between `blog/en/` and `blog/zh/` (copied at build time), this change applies to both English and Chinese blog posts. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
