WordPress Plugins entwickeln: So programmieren Sie eigene Erweiterungen

WordPress Plugin entwickeln

Dass WordPress so beliebt ist, resultiert nicht nur daraus, dass das Content-Management-System quelloffen, schnell installiert und einfach zu bedienen ist. Der durchschlagende Erfolg der Web-Software ist vor allem auch auf ihre Modifizierbarkeit zurückzuführen. Schon seit Version 1.2, die bereits vier Monate nach der ersten stabilen WordPress-Variante erschien, unterstützt WordPress auch eigens entwickelte Plug-ins. So konnten Programmierer das CMS schon zu diesem frühen Zeitpunkt an die eigenen Bedürfnisse anpassen – und das, ohne den eigentlichen Quelltext verändern zu müssen. Seitdem wurden Zehntausende WordPress-Plug-ins programmiert und veröffentlicht, wodurch die einstige Blog-Software sich flexibel für die Gestaltung und Verwaltung von Websites anpassen lässt.

Die Vorteile eines eigenen WordPress-Plug-ins

Angesichts der zahlreichen Erweiterungen, die wie WordPress selbst größtenteils kostenfrei sind und im Plug-in-Verzeichnis der offiziellen Website zum Download bereitstehen, scheint es nicht wirklich notwendig zu sein, ein eigenes WordPress-Plug-in zu erstellen. Auf der Suche nach den geeigneten Erweiterungen für Ihr Webprojekt werden Sie allerdings schnell feststellen, dass viele Plug-ins (hier haben wir für Sie die besten WordPress Plugins vorgestellt) zwar Ihren Suchkriterien entsprechen mögen, aber entweder …

  • nicht mehr weiterentwickelt werden,
  • nicht mehr bzw. nicht wie gewünscht funktionieren
  • oder nicht über den erforderlichen Funktionsumfang verfügen.

Sich mit der WordPress-Programmierung zu beschäftigen und ein eigenes Plug-in zu erstellen oder ein vorhandenes für die eigenen Zwecke umzugestalten, kann somit durchaus sinnvoll sein. Eine eigene Erweiterung ist außerdem auch eine hervorragende Alternative zu der gängigen Funktionserweiterung der WordPress-Installation mithilfe von Änderungen in der individuellen functions.php des verwendeten Themes. Das Kopieren fertiger Codeschnipsel, um beispielsweise Google Analytics zu integrieren, stellt zwar den schnellsten und einfachsten Weg dar, um WordPress zu erweitern, führt bei komplexen Projekten aber häufig dazu, dass die functions.php unübersichtlich wird und sich Fehler auf das gesamte Projekt auswirken. Außerdem müssen Sie alle vorgenommenen Änderungen bei einem Theme-Wechsel mühsam übertragen. Eigene Plug-ins, mit denen Sie alle Anpassungen einzeln und komfortabel verwalten können, lassen sich dagegen problemlos übernehmen, wenn Sie Ihr WordPress-Theme austauschen. Ihre Entwicklung ist außerdem selbst mit geringen Programmierkenntnissen zu meistern.

Schritt 1: WordPress-Plug-in erstellen

WordPress basiert auf der Skriptsprache PHP, weshalb WordPress-Plug-ins im Grunde genommen nichts anderes als PHP-Skripte sind. Eine einfache Erweiterung kann aus einer einzigen PHP-Datei mit nur wenigen Zeilen Code bestehen, wobei Sie bei der Programmierung lediglich hinsichtlich der Lizenzierung eingeschränkt sind. Da WordPress selbst der GNU General Public License (GPL) unterliegt, sollten Sie eine Lizenz wählen, die sich mit dieser vereinbaren lässt, wie z. B. GPLv2. Um den Code der Plug-ins zu vereinheitlichen, wurden außerdem Coding Standards formuliert, deren Einhaltung zwar kein Muss, aber durchaus sinnvoll ist, wenn Sie Ihr Plug-in veröffentlichen wollen. Wenn Sie Ihr erstes eigenes WordPress-Plug-in entwickeln, gehen Sie am besten folgendermaßen vor:

1. Zunächst muss eine PHP-Datei erstellt werden. Dazu können Sie ein beliebiges Textprogramm wie den Standardeditor verwenden (spätestens, wenn Sie mit Codezeilen arbeiten, empfiehlt sich aber ein spezielles Programm wie Notepad++). Wählen Sie beim Speichern einfach „Alle Dateien“ aus und hängen die Endung .php an, beispielsweise mein-plug-in.php. Diese Datei kopieren Sie nun einfach in das Plug-in-Verzeichnis Ihrer WordPress-Installation – standardmäßig /wp-content/plugins/. Zur besseren Strukturierung, insbesondere bei Skripten, die aus mehreren Dateien bestehen, empfiehlt es sich, ein Unterverzeichnis für Ihr Plug-in anzulegen: /wp-content/plugins/mein-plug-in.

2. In die Datei können Sie nun schon einmal die ersten Zeilen mit den allgemeinen Informationen zu Ihrem Plug-in einfügen:

<?php
/*
Plugin Name: NAME DES PLUG-INS
Plugin URI: LINK ZUM PLUG-IN
Description: BESCHREIBUNG DES PLUG-INS
Version: 1.0
Author: IHR NAME
Author URI: LINK ZU IHRER HOMEPAGE
License: GPLv2
*/
?>

3. Damit ist der erste Schritt im Prinzip schon abgeschlossen und Sie haben Ihr erstes WordPress-Plug-in erstellt. Sie werden es bereits auf Ihrer WordPress-Administrationsseite in der Liste der Plug-ins finden, inklusive der Beschreibung und den zwei automatisch erzeugten Links zu Ihrer Homepage und der Plug-in-Seite. Sie sehen auch die Schaltfläche zum Aktivieren bzw. Deaktivieren, allerdings diese zum jetzigen Zeitpunkt natürlich noch vollkommen irrelevant, da bisher keinerlei Funktionen in Ihrer Erweiterung definiert sind.

Schritt 2: Dem eigenen Plug-in Leben einhauchen

Ist der Kopfbereich des PHP-Skripts angelegt, können Sie damit beginnen, die Funktionen Ihres WordPress-Plug-ins zu programmieren. Zu diesem Zweck können Sie beispielsweise die bereits erwähnten Codeschnipsel nutzen, die Sie bisher vielleicht in die functions.php eingefügt haben. Exemplarisch haben wir unsere PHP-Datei an dieser Stelle um einen Shortcode erweitert, mit dessen Hilfe ein Google-Maps-Ausschnitt integriert werden kann:

<?php
/*
Plugin Name: NAME DES PLUG-INS
Plugin URI: LINK ZUM PLUG-IN
Description: BESCHREIBUNG DES PLUG-INS
Version: 1.0
Author: IHR NAME
Author URI: LINK ZU IHRER HOMEPAGE
License: GPLv2
*/
/* Shortcode – Google Maps Integration */
function fn_googleMaps($atts, $content = null) {
 extract(shortcode_atts(array(
  "width" => 640,
  "height" => 480,
  "src" => ''
 ), $atts));
 return '<iframe width="' . $width . '" height="' . $height . '" frameborder="0" scrolling="no"
marginheight="0" marginwidth="0" src="' . $src . '&amp;output=embed"></iframe>';
}
add_shortcode("googlemap", "fn_googleMaps");
?>

Tragen Sie nun noch beim src-Attribut den jeweiligen Embed-Code ein, den Sie bei Google Maps erhalten („Karte teilen oder einbetten“), dann haben Sie erfolgreich Ihr erstes eigenes WordPress-Plug-in entwickelt. Im Navigationsmenü können Sie es nun jederzeit unter dem Reiter „Maps“ finden und aktivieren sowie mit dem entsprechenden Code in Ihr Webprojekt einfügen.

WordPress-Programmierung: Übung macht den Meister

Das in diesem Ratgeber vorgestellte Beispiel-Plug-in zeigt, dass Sie kein PHP-Crack sein müssen, um Ihre eigene WordPress-Erweiterung zu programmieren. Allerdings handelt es sich bei dem Beispiel auch um eine sehr simple Implementierung, während sich komplexe Plug-ins, die aus mehreren Skripten bestehen, meist nicht innerhalb weniger Minuten schreiben lassen. Bei komplexeren Plug-ins müssen Sie sehr strukturiert vorgehen, damit Fehlerquellen idealerweise gar nicht erst entstehen oder zumindest schnell entdeckt und behoben werden können. Achten Sie daher von Beginn an darauf, einen sauberen Code zu verfassen, und bauen Sie aussagekräftige Kommentare ein, die die jeweilige Funktion bestmöglich erklären. Auch der Name des Plug-ins sollte im besten Fall selbsterklärend und niemals mit einem bereits vorhandenen identisch sein.

Für weitere Informationen zum Thema „WordPress-Plug-in programmieren“ empfehlen wir einen Blick in das englischsprachige Entwicklerforum der Web-Software. Im WordPress Plugin Developer Handbook finden Sie ausführliche Hilfestellungen für Einsteiger und Fortgeschrittene – von Programmiertipps bis hin zu Empfehlungen nützlicher Entwicklungstools.