Skip to content

Add per-page SEO metadata (title, description, canonical, OG/Twitter tags) - #82

Merged
mbastian merged 2 commits into
mainfrom
seo-per-page-metadata
Sep 13, 2026
Merged

mbastian merged 2 commits into
mainfrom
seo-per-page-metadata

Conversation

@mbastian

Copy link
Copy Markdown
Member

Summary

  • Every page (home, static pages, the plugins index, and every individual plugin page) previously shared the exact same hardcoded <title>, meta description, and <link rel="canonical" href="https://gephi.org"> — meaning all ~hundreds of plugin pages canonicalized to the homepage instead of themselves.
  • Layout.astro now accepts title/description/image/noindex props, computes a real per-page canonical URL from the request path, and adds Open Graph + Twitter Card tags (with per-plugin screenshot as og:image when available).
  • Fixed <html lang="fr"> to <html lang="en"> to match the site's actual content language.
  • Wired up unique titles/descriptions for all existing pages (home, 404, about, community, desktop, faq, lite, quickstart, toolkit, plugins index, plugin detail).

Test plan

  • npx astro check — 0 errors
  • npx astro build — builds cleanly, 112 pages
  • Verified built HTML output: homepage, plugins index, and multiple plugin detail pages each have correct, unique <title>, meta description, canonical URL, and OG/Twitter tags
  • Verified <html lang="en"> in build output

🤖 Generated with Claude Code

mbastian and others added 2 commits September 13, 2026 13:39
…tags)

Every page previously shared the same hardcoded title, description, and
canonical URL, so all plugin pages canonicalized to the homepage. Layout
now accepts title/description/image/noindex props, computes a real
canonical from the current URL, and emits Open Graph/Twitter tags. Also
fixes html lang from "fr" to "en".

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@mbastian
mbastian merged commit 8691d1d into main Sep 13, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant