Select Page

Hoe een WordPress Child Theme ontwikkelen – En waarom u dat zou willen gebruiken

Hoe een WordPress Child Theme ontwikkelen – En waarom u dat zou willen gebruiken

Een van de grootste voordelen van het gebruik van WordPress is dat u gebruik kunt maken van een heel gamma aan templates die gebruiksklaar worden aangeboden – en ze kunnen allemaal (tot op zekere hoogte) vrij gemakkelijk gepersonaliseerd en aangepast worden door de gebruikers. Maar wat gebeurt er als u uw template geüpdatet wordt nadat het door u aangepast werd?

Dit is een les die gebruikers blijkbaar pas leren wanneer ze er achter komen dat wanneer een template geüpdatet wordt nadat er wijzigingen aan aangebracht werden, dat dan alle aangebrachte wijzigingen overschreven worden. Wanneer u dan geen back-up gemaakt hebt van uw site (en u zou altijd over een back-up moeten beschikken wanneer u begint met het aanbrengen van grote veranderingen aan uw site) dan is alle werk dat u er aan gedaan hebt voorgoed verloren.

Om dit tragisch scenario te voorkomen, is er een ding dat iedere WordPress gebruiker altijd zou moeten doen: altijd Child Themes gebruiken bij iedere installatie van WordPress.

Wat is een Child Theme en hoe ga je te werk?

Een WordPress Child Theme is niet meer of minder dan een apart template dat afhankelijk is van zijn parent theme voor de meeste (maar niet alle) van zijn functies. In de meest basale vorm is een Child Theme alleen maar een CSS style sheet dat door WordPress getoond wordt i.p.v. de stijlen in het Parent Theme. Dit stelt u in staat om veranderingen aan te brengen aan uw template zonder de gepersonaliseerde veranderingen te verliezen die gecreëerd werden toen het parent theme geüpdatet werd.

Complexere Child Themes kunnen bijkomende functies aan. Net als bij design elementen zorgt WordPress ervoor dat het Child Theme eerst gecontroleerd wordt op functionaliteit, en indien geen functies gevonden kunnen worden, zal er automatisch overgeschakeld worden op de functionaliteit van het parent theme. Indien het Child Theme beschikt over functies, zullen deze worden gebruikt in plaats van deze uit het Parent Theme. (of als aanvullingen, indien ze niet bedoeld zijn om bestaande themes te vervangen, maar louter als aanvullingen.

Hoe een WordPress Child Theme creëren?

Ik hoop dat ik u nu heb kunnen overtuigen dat WordPress Child Themes echt wel een noodzaak zijn. Maar natuurlijk wil dit niet zeggen dat mensen er niet door geïntimideerd kunnen raken. Gelukkig is het heel erg gemakkelijk om een WordPress Child Theme te maken.

De eerste stap die u moet nemen om een WordPress Child Theme aan te maken, is de toegang ertoe te  vinden in de directory van de sjablonen en die kunt u terugvinden onder wp-wordpress-child-theme-directory-structure1content/themes. U kunt dit doen via een FTP client of via een interface die voorzien wordt door uw hosting service.

Nu moet u een nieuwe directory aanmaken voor uw Child Theme. U kunt er gelijk welke naam aan geven. Maar ik zou u wel aanraden om de dingen simpel te houden, iets zoals sjabloon-naam child, zou moeten volstaan.

Het uiterst belangrijke gepersonaliseerde css-bestand (verplicht)

Eens u deze eerste twee stappen hebt afgewerkt, is het tijd om (als absolute minimum) het css style sheet toe te voegen dat uw child theme zal bepalen. Om dit te doen creëert u gewoon een tekstbestand (natuurlijk met een daartoe geschikte tekstverwerker), noem het style.css, en kopieer er de volgende code naar toe:

/*
Theme Name: Twenty Thirteen Child
Theme URI: http://example.com/twenty-thirteen-child/
Description: Twenty Thirteen Child Theme
Author: John Doe
Author URI: http://example.com
Template: twentythirteen
Version: 1.0.0
*/
@import url("../twentythirteen/style.css");
/* =Theme customization starts here (aanpassing van het sjabloon begint hier
-------------------------------------------------------- */

Eens dat u uw informatie aangepast hebt om de bovenstaande gegevens weer te geven, dan gaat u verder en geeft u de aanpassingen van het css thema in in de daartoe bestemde plaats en bewaart u het bestand. Voila! U hebt net een child theme gemaakt! Proficiat!Het is nodig om de bovenstaande informatie te wijzigen om de bestanden waar u daadwerkelijk mee werkt weer te geven. Het is uiterst belangrijk om ervoor te zorgen dat uw “sjabloon” en @import secties accuraat en correct zijn bij deze stap. En hou er rekening mee, alles is hier ‘case sensitive’. Alles moet letterlijk overgenomen worden.

Al wat u moet doen om het nieuwe Child Theme te activeren is de map die u aangemaakt hebt voor het Child Theme te zippen (de map die het aangemaakte css bestand bevat) en te installeren via ‘weergave’ (appearances) -> themes in uw WordPress admin-ruimte, net zoals u dat zou doen met ieder ander WordPress theme(of een ander simpel alternatief,  laat het ongezipt en laadt het op via de sjablonen directory door gebruik te maken van een FTP client)

Maar laten we er nu vanuit gaan dat u een  beetje meer complex Child Theme wilt ontwikkelen, iets dat verder gaat dan de gewone aanpassingen in het css. Hoe zou u het vinden om de aanpassingen in PHP kwijt te raken. Hoe zou u het aanpakken om gepersonaliseerde functies in php door te voeren, of de eigenlijke bestanden/ templates te veranderen? Leest u vooral verder.

Bewerken van het functions.php bestand (optioneel)

In het voorkomend geval dat u het functions.php bestand van uw sjabloon wilt aanpassen, maakt u eenvoudig een nieuw functions.php bestand aan, zoals het hier onderstaande, en voegt u het toe aan uw Child Theme. Gelijk welke functie van dit nieuw bestand zal automatisch functies overschrijven van het parent theme bestand. Alles wat niet gespecificeerd werd in dit nieuwe bestand zal gewoonweg het origineel als standaard overnemen.

<?php

// Hier vult u uw code in

?>

Langs de andere kant verschilt het bewerken van php template bestanden een klein beetje van het van de bewerking van css style bestanden en functies. In de twee vorige gevallen was alles wat u moest doen bestanden aanmaken die uw veranderingen bijhielden en/ of uw bestanden overschrijven. In de beide gevallen waren de nieuwe bestanden in het child theme min of meer een aanvulling van de bestanden in het parent theme. Wanneer het echter gaat over php template bestanden, dan moet u de inhoud ervan in zijn geheel vervangen met een nieuw bestand in uw Child Theme.De template bestanden bewerken (optioneel)

Dit kan worden bewerkstelligd door het php template dat u wilt bewerken, te plaatsen op dezelfde plaats in de boomstructuur van het child theme die overeenkomt met deze van de parent theme bestanden. WordPress zal nu het origineel in zijn geheel negeren, en welke aanpassingen u ook doorvoert in het duplicaat bestand in het Child Theme, dit zal ook effectief gebruikt worden door WordPress.

Maar houdt u er rekening mee, dat u enkel die bestanden die u wilt veranderen toevoegt aan uw Child Theme – dus met andere woorden kopieer nu niet nodeloos een heleboel nutteloze bestanden – want wanneer het parent theme wordt geüpdatet, dan kan het nog altijd zo zijn dat u het in onvoorziene omstandigheden, moet nakijken of dat er geen belangrijke updates op til zijn van de sjablonen waaraan u veranderingen hebt doorgevoerd, of die u hebt toegevoegd.

Dus waarom gebruikt niet iedereen Child Themes?

Behalve dat niet iedereen op de hoogte is van het feit dat het nodig is om child themes aan te maken, is de enige goede redenen om geen Child Theme aan te maken, dat u bijvoorbeeld geen wijzigingen wilt maken aan sjabloonbestanden (bijv. U kunt het template gewoon gebruiken zoals het door de ontwikkelaar gemaakt werd, of het template dat u gemaakt biedt al een daartoe bestemde interface aan waarin u alle aanpassingen kunt doen en opslaan) Er zijn veel templates die een interface aanbieden om bijvoorbeeld gepersonaliseerde css aanpassingen te maken. Een andere, te rechtvaardigen reden om geen child themes te gebruiken, is dat wanneer u iets meer wil uitvoeren dan veranderingen in het css, dat dit altijd wel iets meer zal vergen dan gewoon vertrouwd zijn met het originele parent theme dat aangemaakt werd, en dat kan soms een hele klus zijn. – En als dat een beetje aanvoelt alsof dat het geval is, dan kan het zijn dat u kopje onder aan het gaan bent wanneer uw template een kritieke update nodig heeft.

Samenvatting:

Er vanuit gaande dat u uw template up to date houdt (en dat is altijd een erg goed idee) dan is het aanmaken van een child theme een essentiële taak. Gelukkig hebt u maar een paar minuten nodig om er een aan te maken – dus als u er nog geen hebt, dan is het nu het moment.

Voor meer informatie over WordPress Child Themes, kunt u terecht op de officiële wordpress codex official WordPress Codex

*Dat gezegd zijnde, zelfs met een back-up zal het nog altijd moeilijk zijn om het sjabloon te updaten, als u directe aanpassingen hebt uitgevoerd, omdat u nog altijd de nieuwe update moet toepassen (zeker in het geval dat de voornoemde update iets te maken heeft met het patchen van nieuwe ontdekte beveiligingsproblemen die de kop opsteken) en behalve wanneer u al de gemaakte wijzigingen kunt tevoorschijn halen, zal uw back-up misschien niet zo nuttig zijn om u uit de problemen te halen.

** Maar u hoeft mij niet te geloven. Kijk maar naar de medestichter van WordPress (Matt Mullenweg)er over zegt: ” Child themes bieden een kader en zijn de enige manier waarop je een WordPress site kunt bouwen (over het Genesis Framework).”

Hebt u nog tips om Child Themes te bouwen? Geeft u vooral uw mening in de commentaarsectie!

About The Author

Peter Kuipers

Peter is WordPress fanaat, Hosting en Linux specialist en uitgever van diverse online magazines. Daarnaast houd hij van Lekker eten, woont sinds kort in Oostende, en bezoekt regelmatig een WP Meetup.

Door de site te te blijven gebruiken, gaat u akkoord met het gebruik van cookies. meer informatie

Deze site gebruikt cookies om haar services te leveren, advertenties te personaliseren en verkeer te analyseren. Informatie over je gebruik van deze site wordt gedeeld met Google. Als je deze site gebruikt, ga je akkoord met het gebruik van cookies.

Sluiten