Skip to content

Add embeddable per-destination crowd widget (/embed) as a backlink lever - #31

Merged
Manuel10i merged 1 commit into
mainfrom
offpage/embeddable-crowd-widget
Aug 3, 2026
Merged

Manuel10i merged 1 commit into
mainfrom
offpage/embeddable-crowd-widget

Conversation

@Manuel10i

Copy link
Copy Markdown
Owner

The strongest unused off-page lever for packedplaces: a free, embeddable per-destination crowd widget that earns backlinks to exactly the pages that need them (dozens of "best time to visit X" destination pages stuck at pos 40-99, which are link-bound, not content-bound). packedplaces is the only site in the portfolio with the crowd data to offer such a widget.

What

  • /embed/<slug> route handler: a tiny, standalone, layout-free HTML document (12-month crowd bar chart + busiest/quietest + a link back to the destination), self-contained inline CSS so it renders cleanly inside any host pages iframe. Locale via ?lang` (en/de/es/fr).
  • Framing: /embed is excluded from the site-wide X-Frame-Options: SAMEORIGIN and served with Content-Security-Policy: frame-ancestors *, so any site can embed it. It is noindex (meta + X-Robots-Tag) so the thin widget documents never compete with the real destination pages in search.
  • Destination pages get an "Embed this crowd chart" block: a live preview iframe plus a copy-to-clipboard snippet. The snippet pairs the iframe with an attribution <a> that lives in the HOST page`s HTML, so it is the real, followable backlink each embed places to that destination page.
  • i18n en/de/es/fr (es/fr solid but machine-drafted, native review welcome).

Why this shape

An iframe alone carries little SEO backlink value (its link lives in the iframe document). Pairing it with a visible attribution link in the host HTML is the standard widget-backlink pattern and is what actually feeds link authority to the pos-40-99 pages.

Verification

  • tsc, eslint, prettier clean; next build green (778 routes incl. /embed/[slug])
  • Runtime on a prod server: /embed/venice returns 200 with Content-Security-Policy: frame-ancestors * and no X-Frame-Options, 12 bars, backlink to /destination/venice present; ?lang=de localized; unknown slug 404; destination page renders the embed block with live preview + copy snippet
  • No em/en dashes

Not merged.

The strongest unused off-page lever against the 'best time to visit X'
authority gap (dozens of destination pages stuck at pos 40-99, link-bound):
packedplaces is the only site with the crowd data, so it can ship a free
data widget that earns backlinks to exactly those pages.

- New /embed/<slug> route handler: a tiny, standalone, layout-free HTML
  document (a 12-month crowd bar chart + busiest/quietest + a link back to
  the destination). Self-contained inline CSS so it renders cleanly inside
  any host page's iframe. Locale via ?lang (en/de/es/fr).
- Framing: /embed is excluded from the site-wide X-Frame-Options: SAMEORIGIN
  and served with Content-Security-Policy: frame-ancestors * so other sites
  can embed it; marked noindex (meta + X-Robots-Tag) so the thin widgets
  never compete with the real destination pages.
- Each destination page gets an 'Embed this crowd chart' block: a live
  preview iframe plus a copy-to-clipboard snippet. The snippet pairs the
  iframe with an attribution <a> that lives in the HOST page's HTML, so it
  is the real followable backlink each embed places to that destination.
- i18n en/de/es/fr (es/fr solid, machine-drafted, native review welcome).

tsc/eslint/prettier green; next build green (778 routes incl. /embed/[slug]);
runtime verified on a prod server: /embed/venice 200 with frame-ancestors *
and NO X-Frame-Options, 12 bars, backlink present, ?lang=de localized,
unknown slug 404, destination page shows the embed block. No dashes.
@Manuel10i
Manuel10i merged commit dbd2a72 into main Aug 3, 2026
2 checks 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