functions.php Update-sicher anpassen

Keine meiner WordPress-Installationen kommt ohne eine angepasste functions.php aus. Die functions.php ist eine der wesentlichen Dateien von WordPress, über die ohne Plugins direkt im Quellcode das Verhalten und/oder Erscheinungsbild von WordPress geändert werden kann. Nicht selten erhalte ich in Bezug auf die functions.php auch Hilferufe. Änderungen an der functions.php erfolgen ohne Netz und doppelten Boden. Das soll mit anderen Worten heißen: Wer in seiner functions.php selbst einen Fehler einbaut, kann im Handumdrehen seine komplette Webseite lahmlegen.

Dennoch ist das Anpassen der functions.php (meiner Meinung nach) unumgänglich. Denn mit wenigen Zeilen Code bzw. minimalen Code-Anpassungen kann man das Verhalten von WordPress umfangreich und wesentlich verändern, ohne für die gewünschte Anpassung gleich ein weiteres Plugin installieren zu müssen. Und weitere Plugins bedeuten in der Regel einen Performance-Verlust.

Wenn ich also ein Ergebnis mit einem weiteren Plugin oder einer minimalen Anpassung der functions.php erreichen kann, wähle ich in jedem Fall die Anpassung der functions.php!

Das Problem an der functions.php ist jedoch, dass diese im Hauptverzeichnis deines aktiven Themes liegt und somit bei jedem Theme-Update von den Update-Dateien überschrieben wird. Änderungen, die man also zuvor an der functions.php vorgenommen hat, werden durch das Theme-Update einfach überschrieben und gehen verloren.

Änderungen an der functions.php Update-sicher vornehmen

Mit einem kleinen Workaround kann man jedoch Änderungen bzw. Code-Schnipsel die eigentlich in die functions.php gehören vornehmen ohne das diese direkt in die functions.php geschrieben werden müssen. Letztendlich verhindert man hierdurch, dass bei einem Theme-Update die Anpassungen verloren gehen ohne dabei Funktionalität zu verlieren.

Alles was man hierfür machen muss, ist das Plugin Toolbox von Sergej Müller zu (finden und) nutzen. Das Plugin Toolbox war ursprünglich regulär auf der WordPress Plugin-Seite aufrufbar. Als Sergej Müller der WordPress-Community als aktiver Plugin-Entwickler den Rücken gekehrt hat, wurde dieses Plugin wohl auch entfernt. Das Plugin kann jedoch zum Beispiel noch bei Github gefunden werden (externer Link), was sich durchaus lohnen kann!

Toolbox Module statt Anpassungen an der functions.php

Denn mit der genialen Toolbox kann man sich einzelne kleine Module erstellen, die jeweils für eine functions.php-Erweiterung stehen ohne hierbei die functions.php selbst zu verändern. Ein Modul besteht hierbei aus wenigen Zeilen Code, die neben der Modul-Beschreibung eigentlich nur noch die eigentliche Code-Ergänzung beinhaltet. Im Backend können die Module bequem ein- und ausgeschaltet werden, so dass man bei möglichen Problemen aus Anpassungen diese schnell wieder rückgängig machen kann ohne in den Quellcode eingreifen zu müssen.

Ich nutze die Toolbox mit eigenen Modulen bequem um folgende Anpassungen an meinen Installationen vorzunehmen:

  • Automatische Begrenzung der Beitrags-Revisionen
  • Deaktivieren des Heartbeat
  • Entfernen der xmlrpc.php
  • Unterdrücken der Login-Fehlermeldung
  • Entfernen der WordPress-Emojis
  • Optimierung der DB-Tabellen
  • usw.

Da diese ganzen Module nichts mit dem Theme selbst zu tun haben und im Plugin-Verzeichnis mit abgelegt sind, können diese Anpassungen auch nicht durch irgendwelche Updates entfernt werden!