Child Themes mit WordPress für Dummies

Vielleicht hat ja der ein oder andere schon bemerkt, dass ich seit Anfang der Woche auf whoopster.de ein anderes Theme nutze. Das bisherige Theme hatte ich über viele Jahre in Benutzung, von daher war eine Neuerung überfällig.
Gewählt habe ich das von WordPress mitgelieferte Theme Twenty Twelve. Soweit so gut. Natürlich sind Standardthemes nie zu 100% auf die eigenen Bedürfnisse abgestimmt, individuelle Änderungen am Theme sind deshalb obligatorisch. Sei es eine Änderung am Footerdesign, andere Schriftarten oder Farbanpassungen. Nun kennt man das eigentlich so, dass man die PHP-Dateien des Theme nach seinen Wünschen abhändert, die Änderungen speichert und alles ist gut.

Wordpress Child Theme Das alles klappt wunderbar, jedoch nur bis zum nächsten Theme-Update. Die gibt es ja immer wieder mal, und vor allem bei WordPress-Standard-Themes, kann man darauf warten dass diese mit einem WordPress-Update ebenfalls erneuert werden. Was passiert in diesem Moment? Richtig, alle mühsam erstellten manuellen Änderungen am Theme werden überschrieben. Ich habe mir in der Vergangenheit immer damit beholfen, dass ich mich mit dem Status Quo einer Theme-Version abgefunden habe, und nie mehr ein automatisches Update des Themes habe durchführen lassen.

Beim jetzigen Themewechsel bin ich auf die Möglichkeit von Child Themes aufmerksam geworden. Child Themes referenzieren auf ein Parent-Theme, und im Child-Theme werden nur die Änderungen des vorgegebenen Themes hinterlegt. Ändert sich nun das Parent-Theme, sind alle Änderungen noch im Child vorhanden.

Wie funktioniert das in der Praxis?
Wirklich ganz einfach. Als erstes muß auf dem Server auf der Ordnerebene des Themes ein weiterer Ordner angelegt werden, am besten mit dem Zusatz “-child”. Bei mir gibt es also in wp-content/themes einen Ordner twentytwelve und auf gleiche Ordnerebene einen zusätzlichen Ordner twentytwelve-child.

Als nächstes müssen wir angeben, auf welches Parent-Theme das Child referenzieren soll. Dazu legen wir im Ordner twentytwelve-child eine style.css an. Die Datei ist anfangs leer, und muß nun um folgende Informationen ergänzt werden:

/*
Theme Name: Child-Beispiel
Template: twentytwelve
Theme URI: http: //beispiel.de/
Description: Ein Child für das twentytwelve-Theme
Author: Euer Name
Version: 1.0
*/
@import url('../twentytwelve/style.css');

Bis auf “Template” können alle Felder frei benannt werden, die Zeile Template gibt an, auf welches Parent-Theme das Child referenzieren soll. Bei @import url wird die style.css des Parent-Theme verknüpft.

Aktivierung des Child-Theme im Backend
Zum Schluß muß das Child-Theme noch im WordPress-Backend aktiviert werden. Das geht wie gewohnt unter Design – Themes – Verfügbare Themes. Dort aktiviert Ihr einfach das neu erstellte Child-Theme.
Ein Blick auf die Seite verrät, es sieht alles so aus wie vorher. Falls nicht, dann habt ihr bei der Einrichtung des Child-Themes einen Fehler gemacht. 😉

Das Child-Theme besteht damit aus einer Datei, der style.css, alle anderen Informationen referenzieren auf das Parent-Theme.

Header oder Footer anpassen
Wenn ihr jetzt eine der PHP-Dateien im Template ändern wollt, kopiert (!) ihr einfach die php-Datei vom Parent-Theme ins Child Theme. Dort macht Ihr Eure Anpassungen und WordPress weiß dann, dass NUR die Datei im Child-Theme ausgeführt wird, und NICHT die Datei im Parent-Theme. Einzige Ausnahme: die functions.php. Hier könnt Ihr die Datei auch kopieren und im Child-Theme anpassen, allerdings wird die functions.php im Child-Theme ZUSÄTZLICH zur functions.php im Parent-Theme ausgeführt.

Das wars im Großen und Ganzen. Probiert es einfach aus und ihr werdet erstaunt sein wie einfach man mit Child-Themes arbeiten kann, und die Angst vor dem nächsten Theme-Update gehört damit auch der Vergangenheit an.

Child Themes mit WordPress für Dummies
Markiert in:                     

2 Gedanken zu „Child Themes mit WordPress für Dummies

  • 1. Oktober 2013 um 15:20
    Permalink

    Schöne Anleitung, ist gleich in die Bookmarks gewandert. Bei dem ein oder anderen Premiumtheme hab ich immer direkt dran rumgeschraubt – mit dem Ergebnis, dass ich jetzt kein Update fahren kann. 😉

    Beim nächsten Theme bin ich schlauer. 🙂

    Danke & Grüße,
    Ralf

  • 3. Oktober 2013 um 13:24
    Permalink

    Ich hab bisher eigentlich auch immer direkt im Theme meine Änderungen gemacht. Aber das mit den Child Themes ist wohl doch sinnvoller.

    Bei den WP-Standard Themes lohnt es sich meiner Meinung nach aber nicht, dafür gibt es doch eh nie Updates. Außer halt immer die nächste Jahresversion 😉

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.