Opret et child theme til dit WordPress-tema
Hvis du retter direkte i filerne i et tema, forsvinder dit arbejde ved næste opdatering af temaet. Et child theme forhindrer det. Det er et lille tema, der overtager alt fra et andet tema, parent-temaet, undtagen det, du selv lægger i det. Parent-temaet kan du stadig opdatere som normalt. Her kan du læse, hvornår du har brug for et child theme, og hvordan du laver et med File Manager i DirectAdmin.
Har du brug for det?
| Du vil | Brug for child theme? |
|---|---|
| Tilpasse et bloktema i webstedseditoren (Udseende > Editor): farver, skrifttyper, header og footer | Nej. De tilpasninger ligger i databasen og bliver bevaret ved en opdatering. |
| Tilføje et par linjer CSS | Nej. Brug Yderligere CSS i Tilpasning (klassisk tema) eller under Stilarter i webstedseditoren. |
| Tilføje en funktion, der ikke har noget med designet at gøre, fx en integration eller en formular | Nej. Den hører hjemme i et plugin, så den også virker efter et temaskift. |
| Ændre en skabelonfil i temaet, meget egen CSS eller PHP-kode, der hører til designet | Ja. |
Bruger du et bloktema? Så prøv først i webstedseditoren. Vil du gemme dine tilpasninger fra webstedseditoren i filer, kan det officielle plugin Create Block Theme lave et child theme til dig.
Trin 1: find mappen med dit parent-tema
- Åbn File Manager i DirectAdmin. Se Åbn File Manager: mapperne i din pakke.
- Gå til
domains/example.com/public_html/wp-content/themes. - Notér det præcise navn på dit temas mappe, fx
hoofdthema. Det er mappenavnet, der tæller, ikke navnet, du ser i WordPress.
Trin 2: opret mappen og style.css
- Klik på New Folder i mappen
themes, og opret fxhoofdthema-child. - Åbn mappen, klik på New File, og opret
style.css. - Højreklik på filen, vælg Edit, indsæt headeren herunder, og klik på Save.
/* Theme Name: Hoofdthema Child Template: hoofdthema Description: Eigen aanpassingen voor example.com Version: 1.0.0 */ /* Je eigen CSS komt hieronder. */
Linjen Template: er den vigtigste. Her skal parent-temaets mappenavn stå præcist, med de samme store bogstaver og bindestreger. Passer den ikke, melder WordPress, at parent-temaet mangler.
Trin 3: functions.php eller theme.json
Klassisk tema: opret en functions.php i samme mappe, der indlæser dit stylesheet:
<?php
add_action( 'wp_enqueue_scripts', function () {
wp_enqueue_style(
'hoofdthema-child',
get_stylesheet_uri(),
array(),
wp_get_theme()->get( 'Version' )
);
} );
Om parent-temaet selv indlæser sit eget stylesheet, varierer fra tema til tema. Se i dokumentationen til dit tema. Ser dit websted nøgent ud efter aktiveringen, skal du også indlæse parent-temaets stylesheet med get_template_directory_uri() . '/style.css'. Childens functions.php erstatter ikke parentens: begge indlæses, childen først. Kopiér derfor aldrig funktioner fra parentens functions.php, for dobbelte funktionsnavne giver en kritisk fejl.
Bloktema: en functions.php er som regel ikke nødvendig. Vil du fx ændre farvepaletten, så opret din egen theme.json. WordPress fletter den sammen med parentens, så du skriver kun det i den, du vil ændre.
Vil du tilpasse en skabelon, så kopiér kun den ene fil fra parenten til samme placering i din child, og ret i kopien. WordPress kigger først i childen og derefter i parenten. Kopiér ikke det hele, ellers får du ikke længere forbedringerne fra parenten.
Trin 4: aktivér
- Gå til Udseende > Temaer i WordPress. Dit child theme står på listen. Klik på Aktivér.
- Tjek dit websted: header, menuer, widgets og farver. Indstil om nødvendigt menuer og indstillinger i Tilpasning igen.
- Lad parent-temaet blive liggende, og hold det opdateret. Uden parent virker childen ikke.
Vil du hellere lave dit child theme på din egen computer? Så pak mappen som zip, og upload den i WordPress under Udseende > Temaer med knappen Tilføj nyt tema og derefter Upload tema. Eller upload mappen med File Manager eller SFTP til wp-content/themes, se Upload og download filer.
Tilbage til det gamle tema
Aktivér parent-temaet igen under Udseende > Temaer. Kan du ikke længere komme ind i administrationen på grund af en fejl i din child, så omdøb childens mappe i File Manager, fx til hoofdthema-child-uit. WordPress falder så tilbage på et standardtema, hvis et sådant stadig er installeret. Læs mere i Fejl 500 eller "kritisk fejl" på dit websted (også efter en WordPress-opdatering).
Læs mere
- Child themes på developer.wordpress.org (på engelsk)
Vil du lære mere? Tag det gratis WordPress-kursus, lektion 5.2 Lav et child theme.
