WordPress: Child-Theme erstellen – so wird's gemacht!

Marco Kratzenberg

Man sollte immer dann ein WordPress-Child-Theme erstellen, wenn man an einem Design Änderungen vornimmt, die ein Theme-Update überleben sollen. Wir erklären euch, wie man es macht, wo eventuelle Nachteile liegen.

Ein WordPress-Child-Theme ist eine gute Möglichkeit, bereits bestehende Designvorlagen anzupassen, ohne dass die Änderungen beim nächsten Update wieder verschwunden sind. Fast jeder stand schon mal vor der Situation, dass ein kostenloses WordPress-Template fast perfekt ist – aber eben nur fast. Mit ein paar kleinen Änderungen im Seiten-Code oder CSS wird es noch besser. Das Problem: Kaum kommt ein Theme-Update, schon sind alle Änderungen wieder verschwunden.

Darum gibt es die Möglichkeit der WordPress-Child-Themes: Dabei wird eine Kopie des „Parent-Themes“ angelegt, auf das vom Child-Theme immer wieder verwiesen wird. Alle wichtigen Änderungen nehmt ihr im Child-Theme vor, sodass ein Update des Parent-Themes nichts mehr zerstört.

387
CMS Tutorial

WordPress-Child-Theme – Schritt für Schritt

Zuallererst müsst ihr verstehen, dass das Child-Theme nicht ohne seine Vorlage existieren kann. Ein WordPress-Child-Theme verweist immer auf das Parent-Theme und wenn das gelöscht wird, funktioniert das Child-Theme nicht mehr! Das Child-Theme ist also nicht bloß eine Kopie des Parent-Themes, in dem ihr ein paar Änderungen gemacht habt. Wenn ihr allerdings Template-Dateien des Originals in das Verzeichnis des Child-Themes kopiert, dann werden die zur Grundlage eures Designs! Wenn ihr also header.php in das Verzeichnis kopiert, könnt ihr diese Datei ändern, ohne dass die Änderungen durch ein Update zerstört werden.

Ihr könnt diese Anpassungen manuell vornehmen, oder ihr nutzt dazu ein Plugin wie den „Child Theme Configurator“. Da werden euch alle Schritte abgenommen, wobei ihr viele Optionen selbst festlegen könnt.

Schritt 1:

Loggt euch mit eurem FTP-Programm auf eurem FTP-Server ein und wechselt unterhalb eures Hauptverzeichnisses ins Verzeichnis wp-content\themes.

Dort legt ihr ein neues Verzeichnis für euer Child-Theme an.

Regel: keine Leerzeichen, keine Umlaute oder andere Sonderzeichen.

Schritt 2: Neues und altes Theme verknüpfen

Legt zwei leere Dateien an (unter Windows zum Beispiel mit Notepad oder Notepad++). Nennt sie:

  • style.css
  • functions.php

Die Datei style.css gibt euch die Möglichkeit, eigene CSS-Angaben zusätzlich zum bestehenden Design zu machen.

Fügt Folgendes dort ein:

/*
Theme Name: Twentyseventeen Child
Description: Twentyseventeen Child Theme
Author: Euer Name
Author URI: http://www.euredomain.de
Template: twentyseventeen
Version: 1.0
Tags:
*/

Wir haben uns hier mal auf das mitgelieferte Template Twentyseventeen bezogen.

Wichtig ist in dem Fall, dass hinter dem Doppelpunkt in der Zeile „Template“ der Verzeichnisname des Parent-Themes steht. Er muss genauso geschrieben werden, wie auf dem Webserver. In diesem Fall also in Kleinbuchstaben. Die anderen Stellen könnt ihr beliebig ausfüllen. Aber wenn diese Angabe nicht stimmt, wird die Vorlage nicht gefunden.

Mit der Datei functions.php verknüpft ihr das WordPress-Child-Theme mit seiner Vorlage.

Tragt folgende Zeile ein:

<?php add_action( ‘wp_enqueue_scripts’, ‘theme_enqueue_styles’ ); function theme_enqueue_styles() { wp_enqueue_style( ‘parent-style’, get_template_directory_uri() . ‘/style.css’ ); }

Schritt 3: Wichtige Templates kopieren

Wenn ihr nun Änderungen in Seitencodes vornehmen wollt, beispielsweise in der Header- und Footer-Datei oder in der Vorlage für Beiträge beziehungsweise Seiten, dann kopiert diese Dateien ebenfalls in den Ordner des Child-Themes.

Änderungen an diesen Dateien überschreiben die Werte des Eltern-Themes. Allerdings solltet ihr nach Updates kontrollieren, ob ihr eventuell Code ändern müsst, um Sicherheitslücken zu beseitigen. Mehr dazu unten.

Schritt 4: Child-Theme in WordPress aktivieren und anpassen

Jetzt ist es so weit, ihr könnt euer Child-Theme aktivieren und statt der ursprünglichen Vorlage nutzen. Aber ihr solltet bedenken, dass sämtliche Anpassungen am Parent-Theme nicht automatisch im Child-Theme übernommen werden. Wenn ihr also im „Customizer“ der Vorlage Einstellungen geändert habt, müsst ihr die für das Child-Theme wiederholen. Ähnliches gilt für Theme-bezogene Plugins: Wenn ein Parent-Theme Plugins erfordert, müsst ihr die für das Child-Theme erneut installieren.

72 gute WhatsApp-Status-Ideen – von crazy bis seriös

WordPress-Child-Theme-Risiko

Wie erklärt, werden WordPress-Child-Themes nicht mehr automatisch aktualisiert, während das zugrunde liegende Parent-Theme weiterhin Updates bekommt. Wenn also das Eltern-Theme Sicherheitslücken hat, die durch ein Update ausgebügelt werden, dann bleibt das Child-Theme weiterhin ungeschützt. Tiefgreifende Codeänderungen müssen dort von euch vorgenommen werden!

Für dieses Problem empfiehlt sich das Plugin Child Theme Check, mit dem ihr euer Child-Theme immer mit der Vorlage vergleichen könnt. Dort bekommt ihr auch genau zu sehen, wo die Unterschiede liegen und welche Änderungen es im Code gegeben hat. Auf diese Weise müsst ihr zwar in Zukunft euren Code selbst pflegen, habt aber ein perfektes Design und seid gegen die bekannten Sicherheitslücken gefeit.

Ihr könnt das Risiko – und die Arbeit – minimieren, indem ihr wirklich nur die nötigsten Template-Dateien der Vorlage in das Child-Theme-Verzeichnis übernehmt. Wenn ihr also beispielsweise nur im Header und im Footer Änderungen benötigt, dann kopiert auch nur die Dateien header.php und footer.php ins Child-Theme. Dann bekommen alle anderen Dateien ihre Updates.

Neue Artikel von GIGA TECH