arrow_drop_up arrow_drop_down
Hoe je een child theme maakt in WordPress
16 mei 2017 

Hoe je een child theme maakt in WordPress

Dit artikel is niet bedoeld voor beginners en je dient kennis te hebben van o.a. FTP programma's en WordPress theme structuren. 

Waarom het handig is om met een child theme te werken

Als je met kant-en-klare WordPress thema's werkt, dan zal je al snel merken dat zulke thema's meestal nét niet helemaal naar wens zijn. Je kunt dan natuurlijk in de originele codes gaan knutselen, maar dan kom je van een koude kermis thuis wanneer je de theme gaat updaten 🙂 De updates vervangen dan namelijk jouw aangepaste bestanden door de geüpdatete bestanden. Oeps… Al je aanpassingen weg… Ja, dat is natuurlijk niet zo leuk 🙂

De oplossing daarvoor: een child theme maken.

Wat is een child theme precies?

Het is een beetje moeilijk om dit op een logische manier te beschrijven haha 🙂 Waar het eigenlijk op neer komt is dat je een soort kopie maakt van de bestanden die je wilt aanpassen en dat die bestanden nooit overschreven zullen worden wanneer er updates komen.

In je thema map vind je het thema waar je mee werkt. In deze map voeg je dan een “child theme” toe, oftewel een kopie. Maar niet helemaal.. Alléén de bestanden die je ook daadwerkelijk wilt aanpassen. Dus stel.. Ik wil aanpassingen doen in de header.php.. Dan maak ik dus een kopie van het header.php bestand en dan plaats ik deze in de child theme map. En vervolgens doe ik dáár de aanpassingen in. Het originele header.php zal overschreven worden wanneer er updates worden gedaan, maar de child theme header.php zal intact blijven. En daardoor blijven je aanpassingen ook intact. Hoera!

Hoe maak je zo'n child theme?

Het maken van zo'n theme is op zich niet heel erg moeilijk, maar je moet wel maar net snappen wat je precies moet doen. In het gedeelte hieronder zal ik je uitleggen hoe je nou precies een child theme maakt. Maar… Ik wil je vragen in ruil daarvoor mijn Facebookpagina te liken óf te delen. Thanks! 🙂

01. Extra map aanmaken.

  • Log in met je FTP programma en ga naar  wp-content > themes.
  • Maak een nieuwe map aan een noem deze map hetzelfde als je huidige theme, en voeg daar -child aan toe. (dus als je BoonTheme als thema gebruikt, dan zal de map BoonTheme-child heten).

02. Style.css toevoegen.

Een child theme heeft minimaal 2 bestanden nodig; de style.css en de functions.php. Je hoeft deze niet te kopieren vanuit de parent theme. Maak een nieuwe style.css aan en voeg de volgende code toe:

[css]
/*
Theme Name: BoonTheme child
Theme URI:
Description: BoonTheme Theme
Author: Sandra Boon
Author URI: http://boonwebdesign.nl
Template: boontheme
Version: 1.0.0
*/
[/css]

Vervang de gegevens door de gegevens van jouw parent theme. Vervang in ieder geval de Template door de exacte naam van jouw parent theme.

03. Functions.php toevoegen.

Maak vervolgens een functions.php bestand aan en plaats deze in de child theme map. Plaats onderstaande code in de functions.php als je zowel de originele style.css (van de parent theme) als de style.css van de child theme wilt laden (wat meestal het geval is);

[php]
function my_theme_enqueue_styles() {

$parent_style = ‘parent-style';

wp_enqueue_style( $parent_style, get_template_directory_uri() . ‘/style.css' );
wp_enqueue_style( ‘child-style',
get_stylesheet_directory_uri() . ‘/style.css',
array( $parent_style ),
wp_get_theme()->get(‘Version')
);
}
add_action( ‘wp_enqueue_scripts', ‘my_theme_enqueue_styles' );
?>[/php]

Let op: zowel bij de style.css als bij de functions.php zullen nu de extra codes worden toegevoegd als aanvulling op de parent theme codes in plaats van dat het het hele bestand overschrijft.

04. Andere bestanden toevoegen

Vervolgens kun je bestanden van de parent theme kopiëren naar de child theme. In de child theme kun je dan gemakkelijk aanpassingen doen, zónder dat je je aanpassingen kwijt bent wanneer je updates doet.

PS. Vergeet niet bij Weergave > Themes te switchen naar je child theme, anders zie je alsnog de aanpassingen niet 😉

Over de schrijver
Ik (Sandra Boon van Boon Webdesign) ben jouw partner in crime voor WordPress websites en online marketing. Voor ondernemers bouw ik BoonTheme WordPress websites - de perfecte mix tussen kant-en-klaar en maatwerk. Daarnaast bouw ik ook online leeromgevingen voor mijn klanten.
Reactie plaatsen