Site-konfiguration

5. Site-konfiguration

Owners har flere konfigurations-områder ud over user-management. Theme, branding, navigation, custom domains — alt det der gør jeres tenant unik visuelt og strukturelt.

Theme: farver og fonte

Gå til /{tenant}/admin/theme (TASK-130):

Farver

Tre primære farve-kontroller:

  • Primary — accent-farve på links, knapper, header. Default for jeres sitetype
  • Secondary — sekundær accent (sjældnere brugt)
  • Accent — tertier (highlight-bars, decorative elements)

Farverne sættes via standard hex-input (#5b8bcb) eller fra prædefinerede palette-presets ("Ocean", "Forest", "Sunset" osv.).

Fonte

Du kan vælge Google Fonts for to roller:

  • Heading font — bruges på <h1>, <h2>, <h3> osv.
  • Body font — bruges på almindelig brødtekst

Skriv font-navnet præcis som det hedder på Google Fonts (Playfair Display, Inter, Roboto). TesseraCMS loader fonten automatisk via en <link>-tag.

Live preview

Ændringerne vises som live preview i admin-UI'en. Klik Gem for at gøre dem live på det offentlige site.

Brand: logo og footer-wordmark

Gå til /{tenant}/admin/brands:

Brand-records

Hver brand-record har:

  • Title — internt navn
  • Text — tekst-fallback (vises hvis ingen logo-image)
  • Image — URL til logo (PNG/SVG anbefalet)
  • Href — hvor logo'et linker til (default /)

Hvor brandet bruges

Brandet vises i header-slot'en på dit sitetype-layout. Slot-fillers i TenantModules-config bestemmer hvilken brand-record der bruges hvis du har flere.

For de fleste tenants er der én brand-record der bruges i header. Footer-snippet er en separat ting (gemt under Snippet-typen).

Navigation: menus

Gå til /{tenant}/admin/navigation:

Menu-typer

Hver tenant har typisk to menus:

  • main — header-navigation der vises på alle sider
  • footer — footer-navigation med links til "Om", "Privatlivspolitik" osv.

Menu-items

Hvert menu-item har:

  • Typepage (intern page-link), anchor (frontpage-section), external (ekstern URL)
  • Label — det brugeren ser
  • Target page (hvis type=page) — vælg en eksisterende page-record
  • Anchor (hvis type=anchor) — anchor-navn (uden #)
  • External URL (hvis type=external) — fuld URL

Brug

  • Træk menu-items for at sortere
  • Klik et menu-item for at folde konfiguration ud
  • Klik Gem for at persistere

Menuen opdateres på det offentlige site med det samme.

Custom domains

Custom domains kræver koordinering med Platform Admin pga. DNS-konfiguration. Step-by-step:

  1. Køb domænet hos en registrar (Simply, GoDaddy, Namecheap osv.)
  2. Kontakt Platform Admin med domæne-navnet
  3. Sæt DNS op som vi anviser (typisk en CNAME-record peger på *.azurecontainerapps.io-FQDN'en)
  4. Vi tilføjer domænet til jeres tenant via /admin/tenants/{slug}-detalje-siden
  5. Vi binder TLS-certifikatet (Azure Container Apps håndterer det automatisk via Let's Encrypt)
  6. Næste gang nogen besøger https://jeresdomæne.dk, lander de på jeres tenant

Der er ingen automatisering i UI'en for dette i v1 — det er en operationel procedure.

Site-status: active vs draft

Selve tenanten har en status-felt — active eller draft:

  • active — public-routes returnerer 200 OK med jeres indhold
  • draft — public-routes returnerer 404 (men admin virker stadig)

Dette er nyttigt for:

  • Vedligeholdelse — sæt sitet midlertidigt offline mens I laver store ændringer
  • Migration — sluk det gamle site mens nye går live
  • Pause — hvis I tager en pause fra at vedligeholde sitet kan I sætte det til draft for at undgå at vise forældet indhold

Status ændres af Platform Admin i v1 — kontakt os hvis I vil have det sluttet til/fra.

Footer-snippet

Footer-tekst (typisk copyright + organisationsinfo) lever som en Snippet-record. Snippets er små HTML-fragmenter der bruges som slot-fillers i layouts.

For at ændre footer-teksten:

  1. Gå til Brands → find der er typisk en "Footer copyright"-snippet
  2. Rediger HTML-feltet
  3. Klik Gem
  4. Næste page-load viser den nye tekst