So überschreiben Sie Parent-Theme-Funktionen in einem Child-Theme

Veröffentlicht: 2022-11-01

Wenn Sie ein untergeordnetes Thema in WordPress erstellen, besteht die Möglichkeit, dass Sie einige der Funktionen im übergeordneten Thema überschreiben möchten. In diesem Artikel zeigen wir dir, wie du Parent-Theme-Funktionen in deinem Child-Theme überschreiben kannst. Zunächst müssen Sie verstehen, wie WordPress Funktionen lädt. Wenn eine Funktion aufgerufen wird, sucht WordPress zunächst im Child-Theme danach. Wenn es es nicht findet, sucht es im übergeordneten Thema. Wenn Sie also eine Funktion überschreiben möchten, müssen Sie sie nur in Ihrem untergeordneten Thema erstellen. Angenommen, Sie möchten die Funktion get_header() des übergeordneten Designs überschreiben. Du würdest einfach eine get_header()-Funktion in der Datei functions.php deines Child-Themes erstellen. Die neue Funktion würde wie folgt aussehen: function get_header() { // Ihr Code hier } Wenn WordPress nun die Funktion get_header() aufruft, wird es Ihre neue Funktion anstelle der Funktion des übergeordneten Designs verwenden. Natürlich kannst du Funktionen auch überschreiben, indem du sie einfach vom Parent-Theme in das Child-Theme kopierst. Wir empfehlen diesen Ansatz jedoch nicht, da leicht vergessen wird, die Funktionen im Child-Theme zu aktualisieren, wenn das Parent-Theme aktualisiert wird. Es ist besser, den Override-Ansatz zu verwenden, damit Sie sicher sein können, dass Ihr Child-Theme immer die neueste Version der Funktionen des Parent-Themes verwendet.

In diesem Artikel erfahren Sie, wie Sie die Parental-Theme-Funktionen von WordPress überschreiben. Sie können die Reihenfolge ändern, in der Funktionen ausgelöst werden, indem Sie eine von drei Methoden verwenden, oder Sie können verhindern, dass sie überhaupt ausgeführt werden. Wenn Sie ein übergeordnetes Thema erstellen, ist es eine gute Idee, Plug-Ins für Ihre Funktionen einzuschließen, damit sie in untergeordneten Themen problemlos geändert werden können. Verwenden Sie zum Entfernen von Funktionen aus einem übergeordneten Design die Methoden remove_action() und remove_filter(). Abhängig davon, welchen Haken Sie verwenden, wird die Prioritätsstufe einer Funktion bestimmt. Wenn eine Funktion eine Priorität von 20 hat, führt das Umschreiben eines untergeordneten Themas mit Priorität 25 dazu, dass es sich anders verhält als bei der ersten Erstellung der Funktion. Prioritäten hingegen haben keinen Einfluss darauf, wie Sie Ihre neue Funktion schreiben; Wählen Sie einfach aus, was Sie tun möchten.

WordPress-Child-Theme des Child-Themes

Bild von: https://gvtechnolab.in/how-to-create-child-theme-wordpress/

Ein WordPress-Child-Theme ist ein Theme, das seine Funktionalität von einem anderen Theme erbt, das als Parent-Theme bezeichnet wird. Untergeordnete Themen werden häufig verwendet, wenn Sie Änderungen an einem vorhandenen Thema vornehmen möchten, ohne die Möglichkeit zu verlieren, das übergeordnete Thema zu aktualisieren. Wenn ein Child-Theme aktiv ist, sucht WordPress zunächst nach Vorlagendateien im Verzeichnis des Child-Themes. Wenn im Verzeichnis des untergeordneten Designs keine Vorlagendatei gefunden wird, sucht WordPress im Verzeichnis des übergeordneten Designs nach derselben Vorlagendatei. Auf diese Weise können Sie jede Vorlagendatei im übergeordneten Design überschreiben, ohne die Dateien des übergeordneten Designs direkt bearbeiten zu müssen.

WordPress macht es einfach, Websites mit minimalen Kenntnissen in HTML, CSS und/oder PHP zu erstellen. Der Nachteil dieser Methode besteht darin, dass nach der Aktualisierung des Designs durch den Entwickler alle daran vorgenommenen Änderungen verloren gehen. Die Verwendung eines untergeordneten Designs ist eine weitaus bessere Idee, da Sie damit Änderungen an einer Website vornehmen können, ohne etwas am Design ändern zu müssen. Designdateien werden bearbeitet oder geändert, je nachdem, ob das untergeordnete Design ein natives Design oder ein modifiziertes Design ist. Da es nur Teile des von Ihnen angegebenen übergeordneten Themas ändert, kopiert es nicht alles. Damit ein Child-Theme richtig funktioniert, müssen drei Dinge vorhanden sein: ein Ordner, ein Stylesheet und eine functions.php-Datei. Ein untergeordnetes Design sollte einen eigenen Ordner, ein eigenes Stylesheet und eine Datei functions.php enthalten.

Child-Themes befinden sich wie jedes andere Theme im Bereich WP-Content/Themes der WordPress-Installation. Sie benötigen nur den Namen und die Vorlage des Themas. Es ist wichtig, den Rest ausschließlich für Veröffentlichungszwecke aufzubewahren, was ich nicht tue. Wenn Sie functions.php verwenden, können Sie Funktionen und Features einer WordPress-Website ändern und hinzufügen. Das Erstellen der Datei ist so einfach wie das Erstellen eines Stylesheets. Wenn Sie PHP nicht verwenden möchten, um das Design zu ändern, können Sie einfach darauf verzichten. Wenn Sie ein übergeordnetes Thema haben, sollten Sie sich darüber im Klaren sein, wie Ihre Website aussehen soll.

Wenn Sie es hierher schaffen wollen, müssen Sie zuerst die Informationen auf dem Stylesheet Ihres übergeordneten Themas abrufen. CSS und die @import-Regel sind zwei Möglichkeiten, dies zu tun. Wenn alles gut geht, sollte Ihr Child Theme genauso aussehen wie das, das Sie für ihn oder sie erstellt haben. Wir können jetzt damit beginnen, unser Thema anzupassen und Dinge zu ändern, um das gewünschte Ergebnis zu erzielen. Für Anpassungen stehen eine Vielzahl von Optionen zur Verfügung, und wir werden jede einzelne gründlich durchgehen. Benutzerdefinierte Stile können einem untergeordneten Design hinzugefügt werden, das dieselbe Stilhierarchie wie das übergeordnete Design hat. Mit der von Ihnen verwendeten Methode können Sie beliebig viele Änderungen an Ihrer Website vornehmen.

Es ist immer eine gute Idee, die Ordnerstruktur des Child-Themes in der gleichen Reihenfolge wie die des Parent-Themes zu halten. Wenn eine Datei namens page-templates im Parent-Theme einen Ordner namens page-templates enthält, können Sie einen Ordner mit demselben Namen im Verzeichnis Ihres Child-Themes erstellen. Wir benennen einfach page.php vom Parent-Theme in custom-full-width.php um, um unsere benutzerdefinierte Seitenvorlage zu erstellen. Das erste Beispiel ist eine footer-custom.php-Funktion , die dem Fußzeilenelement eine Klasse mit voller Breite hinzufügt, wie unten gezeigt. Jetzt müssen wir nur noch den Code in das Stylesheet unten eingeben. Dies ist unsere Seite in voller Breite. Auch wenn vielleicht etwas geschliffen wurde, sollten wir mit dem Ergebnis vorerst zufrieden sein.

Mit Theme-Hooks können Sie ein Child-Theme anpassen, ohne seine Kerndateien bearbeiten zu müssen. Sie können einem Design sofort Inhalte hinzufügen, z. B. Funktionen, indem Sie einen Design-Hook verwenden. Haken gibt es in zwei Varianten: Aktionshaken und Filterhaken. Benutzerdefinierte Funktionen können mit Aktionshaken zu einer vorhandenen Funktion hinzugefügt werden, während die Filterfunktion die jeweilige Funktion ändern kann. Das Erstellen eines untergeordneten Themas in WordPress ist einfach; Dazu ist nur eine Codezeile erforderlich. In diesem Fall wird eine Funktion zur Gutschrift des Footers im Theme Twenty Fifteen angestrebt. Wenn Sie die Option functions.php verwenden, stellen Sie bitte sicher, dass die geänderte Datei footer.php in Ihrem Child-Theme ebenfalls gelöscht wird.

Haken in untergeordneten Themen können den Umfang der Kunstwerke Ihres Kindes erweitern. Mit einem Child-Theme können wir eine Website vollständig anpassen, ohne die Kerndateien zu ändern. Wenn Sie also ein Thema oder Framework hinzufügen möchten, können Sie dies tun, ohne eines von Grund auf neu zu schreiben. Ihre Änderungen sind vor Design-Updates geschützt; und wenn etwas schief geht, haben Sie immer ein funktionierendes Thema .

3 Gründe, ein Child-Theme zu verwenden

Es gibt mehrere Gründe, warum Sie ein Child-Theme verwenden möchten. Sie können einem vorhandenen Design weitere Anpassungen hinzufügen. Wenn Sie das Aussehen der Website anpassen möchten, können Sie dies mit einem Design tun, das bereits über eine Anpassungsfunktion verfügt. Wenn Sie nicht die Zeit oder das Wissen haben, den ursprünglichen Code zu ändern, können Sie ein Design verwenden. In den meisten Fällen ist die Verwendung eines untergeordneten Themas der bequemste Weg, um die gewünschten Ergebnisse zu erzielen. Wenn Sie ein gutes übergeordnetes Thema verwenden, werden Sie die von Ihnen vorgenommenen Änderungen bemerken und verstehen. Einer der vielen Vorteile der Verwendung eines untergeordneten Themas besteht darin, dass Sie ein Thema erstellen können, das spezifisch für Ihr Kind ist, aber es gibt einige Nachteile. Untergeordnete Themen können mit anderen Plugins, Themen oder Anpassbarkeiten, die Sie erstellt haben, kollidieren. Das zweite Problem mit WordPress ist, dass untergeordnete Themen nicht mit älteren Versionen der Plattform funktionieren. Nicht alle Child-Themes sind mit allen WordPress-Plugins kompatibel. Die Vorteile der Verwendung eines Child-Themes überwiegen bei weitem die Nachteile der Verwendung eines Parent-Themes. Möglicherweise möchten Sie dennoch eine Demo verwenden oder ein untergeordnetes Thema ausprobieren, bevor Sie es veröffentlichen.

So fügen Sie PHP-Funktionen in einem untergeordneten Thema hinzu

Bild von: https://www.wpbeaverbuilder.com/redirect-wordpress-page/

In unserem Fall muss PHP nur eine Datei mit dem Namen „Functions“ erstellen, damit wir sie in unserem Child-Theme-Ordner speichern können. Um die PHP-Tags zu speichern, die sich in Ihrem Texteditor befinden, geben Sie die öffnenden und schließenden PHP-Tags ein und speichern Sie sie als Funktion. Sie haben auch Optionen. Die erste Funktionsdatei wird nach dem Hochladen in Ihren Child-Theme-Ordner hochgeladen.

In diesem Tutorial lernen wir, wie man Funktionen zu einem untergeordneten WordPress-Theme hinzufügt. Im Design Twenty Twelve geben wir den Metainformationen des Beitrags ein anderes Aussehen. In diesem Tutorial lernen Sie als Teil einer Serie, wie Sie untergeordneten Themen Funktionen hinzufügen. Wenn wir uns die in Twenty Twelve enthaltene Datei functions.php ansehen, sehen wir, dass ihr Header eine sehr interessante Zeile enthält. Die Plug-in-Funktionen werden in einen Aufruf wie diesen eingeschlossen. Die Funktion „twentytwelve_nice_function“ (vorausgesetzt, sie existiert) würde nur geladen, wenn sie nicht im übergeordneten Design vorhanden wäre. Um eine leere Datei zu erstellen, trage functions.php in unseren Child-Theme-Ordner ein.

In diesem Tutorial ändern wir die Standardausgabe des Designs Twenty Twelve. Eine neue Abteilung wird erstellt, um die Funktion zu handhaben, die die formatierte Zeichenfolge für die Post-Meta-Informationszeile generiert. Die CSS-Regeln des Child-Custom-Meta-Div müssen zum Zeitpunkt der Erstellung vorhanden sein. Die neue Datei functions.php und die neue Datei style.html müssen in den Child-Theme-Ordner hochgeladen werden.

So greifst du auf Dateien in deinem Child-Theme zu

Die Ordnerstruktur des untergeordneten Designs ermöglicht es Ihnen, bestimmte Dateien im Design zu ändern. Zunächst muss der Ordner des untergeordneten Designs auf Ihrer Website gefunden werden. Verwenden Sie danach den folgenden Pfad: br>a href=www.yourdomain.com/br>www.yourdomain.com/yourparenttheme folder/br>www.yourdomain.com/yourchildtheme folder/br>/a> Wenn Ihr Child-Theme befindet sich beispielsweise unter sites/blog/themes/childtheme, befindet sich Ihr übergeordnetes Thema beispielsweise unter sites/blog/themes/childtheme. Stellen Sie sicher, dass Änderungen an der Kopfzeile vorgenommen wurden. Sie können die Datei beispielsweise lesen, indem Sie zu site/blog/themes/child-theme/header gehen. Wenn Sie statt bestimmter Dateien im Child-Theme das gesamte Parent-Theme ändern möchten, können Sie über die Ordnerstruktur des Parent-Themes auf die Dateien des Parent-Themes zugreifen. Stellen Sie zunächst sicher, dass Sie den Ordner des übergeordneten Designs auf Ihrer Website haben. Das Folgende ist der nächste Schritt. www.sitename.com/ Wenn sich Ihr übergeordnetes Design beispielsweise unter sites/blog/themes/default befindet, befinden sich die Dateien Ihres übergeordneten Designs dort.