Lag din egen versjon av et WordPress-tema

wp2

Et «child»-tema i WordPress er en måte å kopiere et annet tema, og gjøre dette til ditt eget tema. Dette er en utmerket måte å lære å lage egne temaer, og ikke minst tilrettelegge temaer etter ditt behov. Denne metoden passer også for deg som skal gjøre noen små endringer i et tema, uten å ødelegge originaltemaet.

Hva er egentlig et «child»-tema?

Et «child»-tema er et tema som er basert på et «parent»-tema, men som du redigerer slik du ønsker å ha det. Et «child»-tema inneholder en referanse til «parent»-temaet, noe som innebærer at «child»- og «parent»-tema er i utgangspunktet identiske, helt til du gjør noen endringer i «child»-temaet

Les også: WordPress-skolen

En måte å forstå konseptet «child»-tema, er å tenke på en webserver som leser PHP-filer for å lage en nettside. Denne serveren vil alltid prøve å lese en PHP-fil på «child»-temaet først. Hvis ikke serveren finner en aktuell PHP-fil i «child»-temaet, vil den lese samme PHP-fil i «parent»-temaet.

Dette betyr med andre ord at hvis du har et «child»-tema med kun en style.css, vil «child»-nettsiden være identisk med «parent».nettsiden. Man kan si at «parent» er en slags backup av «child».




Ulemper

Du må kunne litt HTML-og PHP-koding, og du må dessuten vite hvordan du kopierer funksjoner (PHP-koder) fra den ene PHP-filen til den andre, for å ha nytte av «child»/«parent»-teknikken.

Fordeler

«Child»-tema har langt flere fordeler enn ulemper. Dette er noen av dem:

  • Hvis du finner et interessant tema, men mangler noen funksjoner, eventuelt er litt annerledes enn du kanskje ønsker, kan du kopiere temaet, og lage ditt eget tema med funksjoner du selv ønsker. Dette er et bedre alternativ enn å endre på eksisterende tema, fordi da har du «ødelagt» originaltemaet.

  • Hvis du har laget et «child»-tema, trenger du ikke å starte fra scratch, hvis du ønsker å lage din egen versjon av et bestemt tema.

  • Hvis det lanseres en oppdatering for «parent»-temaet, blir ikke «child»-temaet overskrevet.

Vær oppmerksom på lisensvilkår

Før du går videre med kopiering av et WordPress-tema, bør du sørge for at du har tillatelse til å lage din egen versjon. Et tema som har GPL-lisens (GNU General Public License) er åpent, og som derfor kan kopieres og endres av alle. Alle temaer du finner i det såkalte WordPress.org Themes Directory er åpne.

Lag «child» med ett klikk

Det finnes en slags snarvei, en lettvinn måte å opprette «child»-tema, og det er bruk av utvidelsen One-Click-Child-Theme. Det eneste du trenger å gjøre er å installere utvidelsen, aktivere «parent»-temaet. Klikk på «Child Theme» i Utseende og Temaer. Legg inn navnet på temaet, en beskrivelse, ditt navn og klikk på «Create Child». Ferdig!

Slik oppretter du «child»-tema manuelt

En annen måte er å lage «child»-tema manuelt, og det er denne metode vi gjennomgår nå. Opprett en ny mappe som undermappe i themes-mappen, altså mappen som har alle WordPress-temaer. Det blir undermappe i wp-content/themes. Gi temaet et nytt navn, og pass på å ikke ha mellomrom i navnet, for eksempel twentysixteen-child. Opprett filen style.css og legg denne i samme mappen.

Filen style.css ser slik ut:

/*
Theme Name: Twenty Sixteen Child
Theme URI: http://example.com/twenty-sixteen-child/
Description: Twenty Sixteen Child Theme
Author: Ola Nordmann
Author URI: http://examlpe.com
Template: twentysixteen
Version: 1.0.0
*/
/* =Imports styles from the parent theme
————————————————————– */
@import url(‘../twentysixteen/style.css’);

Du kan eventuelt foreta noen endringer i filen, men følgende linjer må være på plass: «Theme Name» og «Template», det vil si navn og plassering på filen. Navnet på temaet må være unikt. Hvis ikke disse er med, vil ikke temaet vises på en ordentlig måte i kontrollpanelet.

Før du installerer et «child»-tema i din WordPress-installasjon, må «parent»-temaet være installert, altså temaet som «child»-temaet er basert på. Hvis ikke dette er på plass, vil ikke «child»-temaet dukke opp som ett av alternativene i din WordPress-installasjon

Når «parent»-temaet er på plass, kan du gå til Utseende, Temaer i kontrollpanelet, og da skal du se ditt «child»-tema som ett av alternativene. Dette kan du bare aktivere, og dette gjør du via Utseende, Temaer i kontrollpanelet – her skal altså «child»-temaet være som ett av alternativene.

«Child»-temaet er på plass, hva nå?

Videre redigering handler om å endre temaet slik du vil ha det. Du kan kopiere hvilken som helst PHP-fil til ditt «child»-tema, eventuelt lage nye PHP-filer. Det er en fin arbeidsmetode å alltid opprette et «child»-tema, før du gjør noen endringer på nettsiden din.

Et alternativ er å kopiere originale PHP-filene (såkalte mal-filer) fra «parent» til din egen mappe («child»-temaet), og her kan du bare prøve deg frem med endringer i koden.

Dette er noen av mal-filene som brukes i WordPress-temaer (du finner en komplett liste på wordpress.org):

  • index.php
  • header.php
  • footer.php
  • sidebar.php

Alle disse filene, som ligger i «child»-tema-mappen, overskriver samvarende filer i «parebt»-tema.mappen, med ETT unntak, og det er filen functions.php – mer om dette i neste avsnitt.

Filen functions.php er annerledes

Filen functions.php i et «child»-tema er annerledes enn de andre filene, i den forstand at kommandoene i denne filen overskrever ikke kommandoene i «parent»-temaet, men de kommer i tillegg. Dette betyr i praksis, at du kan ikke bare kopiere filen functions.php fra «parent»-tema-mappen til «child»-tema-mappen, og legge dine egne PHP-funksjoner der.

Du trenger ikke filen functions.php i «child»-tema, med mindre du skal legge til ekstra funksjoner. Dessuten, trenger ikke filen functions.php i «child»-tema noen header, nettopp fordi kodene du skriver der, kommer i tillegg til kodene i functions.php i «parent»-temaet. Du trenger bare å legge eventuelle ekstra funksjoner, og ferdig med det.

Mer informasjon

wordpress.org finner du god dokumentasjon om «child»-tema.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *