So einfach erstellst du ein eigenes WordPress-Widget

Das eigene WordPress-Widget ist neben Plugins eine weitere tolle Möglichkeit, dein WordPress um nützliche Funktionen zu erweitern. Während Plugins zumeist spezifische Funktionen für die Website bereitstellen, wie etwa die Anzeige von ähnlichen Beiträgen, erweitern Widgets die möglichen Funktionen für die Widget-Bereiche deines Themes. Viele interessante Funktionen sind hier denkbar, zum Beispiel die Anzeige einer „Über mich“-Box oder aber deiner letzten Tweets. In diesem Beitrag zeigen wir dir anhand zweier Beispiele, wie einfach du ein eigenes WordPress-Widget erstellen kannst.

So einfach erstellst du ein eigenes WordPress-Widget

Was ist ein WordPress-Widget und warum solltest du das wissen wollen?

Widgets fügen Inhalte und zusätzliche Funktionen zu deinen Widget-Bereichen (Sidebars) hinzu. Die Möglichkeiten sind vielfältig, denn die Platzierung innerhalb eines Themes kann in den unterschiedlichsten Bereichen erfolgen, etwa klassisch in der Sidebar, im Footer oder in speziellen Widget-Bereichen innerhalb einer speziellen Startseite deines Themes. Genauso vielfältig wie die möglichen Platzierungen sind die Funktionen, die sie bereitstellen können.

Wer Themes entwickelt, sollte auch Widgets bereitstellen

Viele Menschen, die sich eingehender mit WordPress beschäftigen, möchten irgendwann eigene Themes erstellen. Die logische Weiterentwicklung dessen ist das Bereitstellen von Funktionen durch Widgets. Grundsätzlich ist es bedeutend besser, zusätzliche Funktionen über Plugins und Widgets bereitzustellen, denn dann sind diese Features auch nach einem Theme-Wechsel weiterhin nutzbar. Das ist ganz im Sinne der Benutzerfreundlichkeit, der User des Themes wird es honorieren.

Widgets entwickeln – ein Einstieg

Wer ein eigenes Widget entwickeln möchte, sollte sich schon etwas mit PHP auskennen. Hier ist es wie bei der Theme- und Plugin-Entwicklung. Eingehendere Kenntnisse in PHP schaffen immer gute Ergebnisse, wenn man sich an die WordPress-Coding-Standards hält. Die beiden Widgets, die ich hier vorstelle, sind relativ einfacher Natur, auch Einsteiger sollten sich nach einer kurzen Einarbeitung damit zurechtfinden.

Wichtige Links zum Thema:

Widgets entwickeln – die Grundschritte

Seit WordPress 2.8 werden Widgets erstellt, indem die WordPress-eigene Widget-Klasse WP_Widget erweitert wird. Dabei teilt sich ein Widget in fünf verschiedene Grundbereiche auf:

1 – Die Initialisierung – function __construct(). Hier legt man die ID des Widgets, den Namen und die Beschreibung fest. Zudem können wir in diesem Bereich noch die Standard-Optionen festlegen. Wenn JavaScript oder Stylesheets referenziert werden müssen, dann kommt die nötige Funktion ebenfalls in diesen Bereich.

2 – Das Frontend-Design – function widget(). Dies ist der Bereich, in dem die Funktionen für die Ausgabe des Codes auf der Website hineinkommt. Es ist also der eigentliche Funktionsbereich des Widgets.

3 – Das Backend-Design – function form(). In diesen Bereich kommen die nötigen Funktionen mit dem HTML für den Kontrollbereich des Widgets im WordPress-Adminbereich.

4 – Das Update der Einstellungen – function update(). Wie der Name schon sagt, wird in diesem Bereich die Funktion für die Validation und das Update der Widget-Einstellungen untergebracht.

5 – Die Registrierung – function init(). Das Widget wird registriert in WordPress und kann damit wie ein Plugin aktiviert werden.

Diese fünf Bereiche stellen den Grundaufbau eines Widgets dar, wie der folgende Screenshot verdeutlicht.

Ein Klick öffnet das Gist bei GitHub
Die vier Grundbereiche eines Widgets

Der wichtigste Schritt – der Plugin-Header

Bevor du dein fertiges Widget nutzen kannst, braucht es noch einen »Header«, um auch im Plugin-Verzeichnis unter dem Menüpunkt „Plugins“ angezeigt zu werden.

Der Header eines WordPress Plugins

Da das Widget ebenfalls vom Handling her ein Plugin ist, muss es zwingend einen Plugin-Header besitzen. Wenn dieser Schritt vergessen wird, erscheint das Widget nicht im Plugin-Bereich deines WordPress und kann somit nicht aktiviert werden. Mit Header jedoch erscheint es in der Übersicht.

Die Dr. Web Plugins in der Übersicht

Zwei Beispiel-Plugins inklusive Download

Beispiele sind oftmals der beste Weg, um etwas zu lernen. Daher habe ich zwei Widgets als Beispiel herausgesucht und für Dr. Web umgeschrieben. Die Schwierigkeitsstufen sind für Einsteiger geeignet, das »Über mich«-Widget ist recht einfach gehalten, das »Twitter Timeline« Widget ist etwas anspruchsvoller, weil es eine JavaScript-Datei dem Footer hinzufügt, wenn es genutzt wird.  Jedoch ist auch das Twitter-Widget noch im Einsteiger-Bereich anzusiedeln.

Das »Über mich« Widget

Dieses kleine Plugin erstellt ein einfaches »Über mich«-Widget, das neben einem Gravatar von dir einen Text über dich darstellen kann. Die Größe deines Gravatars kann ebenso eingestellt werden, wie die Seite, auf die das Widget verlinken soll.

Ein Klick öffnet die vollständige Datei bei GitHub.
Das "Über mich" Widget

Die Einstellungen des Widgets

About Widget Einstellungen

Das Endergebnis auf der Website

Das Endergebnis des About me Widgets

Das Twitter-Timeline-Widget

Das Twitter-Timeline-Widget zeigt die beliebte Twitter-Timeline in der Sidebar an. Mit diesem Widget ist es dir möglich, deine letzten Tweets recht ansprechend darzustellen. Zudem können deine Besucher direkt aus der Anwendung heraus einen Tweet an dich absetzen. Um das Widget nutzen zu können, benötigst du eine Twitter Widget ID. Dieser Beitrag erklärt anschaulich, wie man sie erhält.

Ein Klick öffnet die vollständige Datei bei GitHub.
Der Code des Twitter Timeline Widgets

Die Einstellungen des Widgets

Twitter Widgets Einstellungen

Das Endergebnis auf der Website

das-twitter-widget

Abschlussarbeiten am Widget

Nachdem die Widgets fertig programmiert und auf einer lokalen Entwicklungsumgebung getestet wurden, können sie installiert werden. Hierzu erstellt man einen Ordner mit dem (kleingeschriebenen) Plugin-Namen, dieser könnte zum Beispiel »drweb-about-widget« lauten. Dort hinein kommt die Plugin-Datei. Im Anschluss kann man den Ordner dann per (S)FTP in das Plugin-Verzeichnis (wp-content/plugins) hochladen und ganz normal als Plugin aktivieren. Danach taucht das Widget unter den zur Verfügung stehenden Widgets auf und kann genutzt werden.

Fazit

Die Grundkenntnisse im Erstellen von Widgets kannst du dir mit diesem Beitrag erarbeiten. Die beste Methode, um zu lernen, wie man Widgets erstellt, ist das Herumexperimentieren mit dem Widget-Code der beiden Beispiel-Dateien. Beide Widgets sind voll funktionstüchtig und getestet, sie werden also auch unter WordPress 4.4.2 funktionieren.

Download der Widgets

(dpe)

ist freier Journalist, Spezialist für WordPress und WordPress Sicherheit und schreibt seit 2012 für Dr. Web. Nebenbei ist er Autor mehrerer E-Books zu den Themen Lebenshilfe, Marketing und WordPress. Auf seinem Blog TechBrain.de schreibt er über das Schreiben und Bloggen und veröffentlicht nützliche WordPress-Snippets.

Mit der Nutzung unseres Angebots erklärst du dich damit einverstanden, dass wir Cookies verwenden. Weitere Informationen

Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anzubieten und die Zugriffe auf unsere Website zu analysieren. Dadurch geben wir nicht personenbezogene Informationen zur Nutzung unserer Website an unsere Partner für soziale Medien, Werbung und Analysen weiter. Nähere Informationen findest du in unserer Datenschutzerklärung. Durch die Weiternutzung unserer Website (oder das ausdrückliche Klicken auf "Einverstanden") gehen wir davon aus, dass du mit der Verwendung von Cookies einverstanden bist.

Schließen