In der WordPress Theme-Entwicklung ist es manchmal sehr hilfreich, wenn bestimmte Informationen direkt auf dem Bildschirm ausgegeben werden. Natürlich lässt sich das systeminterne Debug-Logging aktivieren oder der PHP-Log auslesen, wir nutzen jedoch gerne eine ganz einfache Funktion um ohne Umwege unmittelbar an bestimmte Informationen im Code zu gelangen.

Die Entwicklung von WordPress-Themes oder projektbezogenen -Plugins ist eine unserer Haupttätigkeiten im tagtäglichen Geschäft. Hier optimieren wir unseren Workflow stetig weiter, um eine möglichst effiziente Arbeitsweise zu finden. Hierzu gehört auch das Debugging, also das Suchen und Beheben von Fehlern im Code. Wie eingangs beschrieben, bietet WordPress hierfür ein eigenes Logging, welches in der wp-config.php ganz einfach aktiviert werden kann durch den Eintrag folgender Zeile:

1
define('WP_DEBUG', true);

Darüberhinaus steht natürlich auch noch der allgemeine PHP-Log zur Verfügung, um Warnungen und Fehlermeldungen in einer Datei oder am Bildschirm auszugeben. Jedoch sind die Anforderungen innerhalb der WordPress Theme-Entwicklung oft gar nicht fehlerbasiert – wie beispielsweise der Einblick in die vorgehaltenen Werte eines Arrays. Um eine rasche Ausgabe im Template beziehungsweise im Browser zu ermöglichen, möchten wir folgende kleine Funktion als Helfer in der Entwicklung vorstellen, die einfach in die functions.php des Themes kopiert werden kann:

1
2
3
4
5
6
// Echo preformatted debug message
function lnet_debug( $var ) {
	echo '<pre>';
	print_r($var);
	echo '</pre>';
}

Durch den Aufruf von

1
lnet_debug($meine_variable);

im Theme wird nun direkt auf der Seite eine formatierte Ausgabe durch die Verwendung der PHP-Funktion print_r erzeugt. Diese gibt in lesbarer Form den Wert einer Varibalen aus, was sich oft als sehr praktisch erwiesen hat, um beispielsweise das aktuelle Post-Objekt einsehen zu können.

Christian Leuenberg

Christian ist Inhaber bei L.net Web Solutions und zugleich Webentwickler für Kundenprojekte auf Basis von WordPress, MODX und Shopware.

0 Kommentare

Eine Antwort hinterlassen

This site uses Akismet to reduce spam. Learn how your comment data is processed.