Hoppa till huvudinnehåll
Petanque Life

Navigation & Structure

F18.05 6 features Planerad

I korthet

Navigation and structural primitives that hold a CMS site together — a tree-based menu builder with localized labels, auto-generated pages for rankings, calendar, results and club directory, JSON-LD breadcrumbs, gating-aware full-text site search, an XML sitemap for crawlers with hreflang alternates, and a fully customizable footer with link columns, contact info and social handles separated from layout presets.

Så fungerar det

Each CmsSite owns a Navigation document containing one or more menus (typically primary, footer and utility). The menu builder is a tree editor: editors add items, set labels per locale, link to internal CmsPages, external URLs or auto-generated pages, and reorder via drag. Auto-generated pages are virtual routes that don't require a CmsPage record — `/rankings`, `/calendar`, `/results`, `/clubs` are rendered by templates that pull data straight from the API and respect the site's tenant scope.

Editors enable or disable each one with a checkbox in site settings; when enabled, the route becomes available to the menu builder and the renderer. Breadcrumbs are derived from the URL hierarchy and CmsPage parent_id, rendered with JSON-LD BreadcrumbList for SEO. Site search indexes every published page, article and dynamic-page snapshot via Algolia (or a self-hosted Meilisearch fallback) and respects page access control — a public visitor never sees results from members-only pages, and a logged-in member sees only pages their groups grant access to.

The search index is refreshed incrementally on every publish event. The XML sitemap is generated on demand at `/sitemap.xml`, includes lastmod, changefreq and priority per page plus xhtml:link hreflang alternates for translated pages, and skips drafts and noindex pages. The footer is a structured editor: editors add columns of links, contact info, social media handles and legal links; a separate set of footer presets (multi-column, minimal, social-focused) controls layout, while content stays editable.

Centrala funktioner

  • Tree-based menu builder with localized labels and tenant-scoped link picker
  • Auto-generated pages for rankings, calendar, results and club directory
  • Breadcrumb navigation with JSON-LD BreadcrumbList markup
  • Site-scoped full-text search respecting page access control
  • Auto-generated sitemap.xml with hreflang alternates
  • Structured footer editor with link columns, contact info and social links
  • Footer layout presets independent of content

I praktiken

Léa, secretary of CC Marseille, restructures her club site for the new season. She opens the menu builder, drags 'Calendrier' to second position, adds a new 'École de pétanque' submenu with three child links to membership pages, and translates each label to French and English. She enables the auto-generated /clubs page so visitors can find affiliated venues, then ticks /results so the public can browse last weekend's competitions without leaving the site.

She updates the footer with the new postal address, adds Instagram and Facebook handles, and removes a dead sponsor link. The new sitemap.xml is regenerated on her next publish, and search engines pick up the structural changes within 24 hours.

Features i detta subsystem

6
ID Status Funktioner
F18.05.01 Levererad Menu builder (custom navigation) — PL-F1805 ✅ PL-F1805
F18.05.02 Levererad Auto-generated pages (rankings, calendar, results — pulled from API) — PL-F1805 ✅ PL-F1805
F18.05.03 Levererad Breadcrumb navigation — PL-F1805 ✅ PL-F1805
F18.05.04 Levererad Search within site — PL-F1805 ✅ PL-F1805
F18.05.05 Levererad Sitemap generation (XML for search engines) — PL-F1805 ✅ PL-F1805
F18.05.06 Levererad Footer customization (links, contact info, social media) — PL-F1805 ✅ PL-F1805