Tilpasninger

Nyrge har et innebygd system for tilpasninger som lar deg endre maler, stiler og funksjonalitet uten å miste endringene ved oppdateringer. Alt lagres i storage/overrides/ — en mappe som aldri overskrives ved CMS-oppdateringer.

Hvordan det fungerer

Når Nyrge laster en mal, sjekker det først om det finnes en tilpasset versjon i storage/overrides/. Rekkefølgen er:

  1. storage/overrides/ — dine egne tilpasninger (høyest prioritet)
  2. Bransjetema — temaet du bruker (f.eks. handverker, frisor)
  3. Overordnet tema — standardtemaet som bransjetemaet bygger på

Hvis det ikke finnes noen tilpasning, brukes temafilen som vanlig. Du trenger aldri å endre originalfilene.

Mappestruktur

Tilpasninger følger samme struktur som temaet:

  • storage/overrides/templates/ — sidesmaler (page.php, archive.php osv.)
  • storage/overrides/parts/ — deler som header, footer og andre delsmaler
  • storage/overrides/assets/css/ — CSS-filer
  • storage/overrides/assets/js/ — JavaScript-filer
  • storage/overrides/functions.php — egne PHP-funksjoner og hooks

Legge til egendefinert CSS

Den enkleste tilpasningen er å legge til egen CSS. Opprett filen storage/overrides/assets/css/custom.css og legg til dine stiler:

/* Endre bakgrunnsfarge på header */
.site-header {
    background-color: #1a1a2e;
}

/* Endre skriftstørrelse på overskrifter */
h1 {
    font-size: 2.5rem;
}

Filen lastes automatisk etter temastilene, slik at dine regler overstyrer temaets standardstiler.

Tips: Du trenger ikke kopiere hele stilarket. Legg bare til de reglene du vil endre — resten arves fra temaet.

Legge til egen JavaScript

Opprett storage/overrides/assets/js/custom.js for egendefinert JavaScript. Filen lastes automatisk etter temaets hovedscript.

Overstyre en sidemal

For å tilpasse en sidemal:

  1. Finn originalen i temaet ditt, f.eks. themes/handverker/templates/page.php
  2. Kopier filen til storage/overrides/templates/page.php
  3. Rediger kopien etter behov

Nyrge vil automatisk bruke din versjon i stedet for temaets original.

Overstyre en delsmal

Samme prinsipp gjelder for deler som header og footer:

  1. Kopier f.eks. themes/handverker/parts/header.php
  2. Legg den i storage/overrides/parts/header.php
  3. Gjør dine endringer i kopien

Erstatte en temafil helt

Du kan også erstatte hele stilarket ved å legge en fil med samme bane i overrides. For eksempel overstyrer storage/overrides/assets/css/style.css temaets hovedstilarket fullstendig.

Advarsel: Hvis du erstatter hele stilarket, vil du ikke lenger motta stiloppdateringer fra temaet. Bruk heller custom.css for å legge til eller overstyre enkeltstiler.

Egne PHP-funksjoner

For mer avanserte tilpasninger kan du opprette storage/overrides/functions.php. Her kan du bruke Nyrges hook-system til å legge til ekstra funksjonalitet:

<?php
use Nyrge\Plugins\Hook;

// Legg til et banner øverst på siden
Hook::on('header_after', function () {
    echo '<div class="info-banner">Sommersal — 20 % rabatt!</div>';
});

Hva skjer ved oppdateringer?

Når vi oppdaterer CMS-en eller temafilene dine, synkroniseres alt unntatt storage/-mappen. Det betyr:

  • Alle dine tilpasninger i storage/overrides/ beholdes
  • Temaoppdateringer trer i kraft for filer du ikke har overstyrt
  • Filer du har overstyrt, bruker fortsatt din versjon
Tips: Etter en temaoppdatering kan det være lurt å sjekke om dine overstyrte maler trenger oppdatering for å passe med nye funksjoner i temaet.

Fjerne en tilpasning

Vil du gå tilbake til temaets standardversjon? Slett bare den aktuelle filen fra storage/overrides/. Nyrge vil automatisk falle tilbake til temaets original.

Fant du ikke det du lette etter?

Ta kontakt med oss, så hjelper vi deg videre.

Kontakt oss