Für Nicht-Codierer, die eine WordPress-Site erstellen, sind Widgets großartig. Damit können Sie Menüs, Listen, Feeds, Text und vieles mehr zu Widget-Bereichen hinzufügen, die nicht auf die Seitenleiste beschränkt sein müssen. Viele Themes enthalten jetzt Widget-Bereiche in der Fußzeile, und die großen Theme-Frameworks verfügen häufig über Widget-Bereiche an verschiedenen Stellen, z. B. in der Kopfzeile und vor und nach dem Inhalt.
In dieser fünfteiligen Serie werde ich Sie durch die Schritte führen, die zum Erstellen Ihres ersten Widgets erforderlich sind. Die Serie umfasst:
In diesem Teil werde ich Widgets und die Widgets-API vorstellen.
Um ein Widget zu erstellen, erweitern Sie das WP_Widget
Klasse, die eine Reihe von Funktionen enthält:
Darüber hinaus verwenden Sie die register_widget ()
Funktion, um das erstellte Widget zu registrieren.
Sie können so ziemlich alles, was Sie möchten, in ein Widget einfügen - statischer Text, die Ausgabe einer Datenbankabfrage, einen Feed von einer anderen Site und mehr. Beachten Sie jedoch, dass Benutzer erwarten, dass Widgets in einen definierten Bereich der Seite passen, sodass die Ausgabe Ihres Widgets nicht zu groß sein sollte.
WordPress verfügt über eine Reihe von integrierten Widgets. Bevor Sie mit der Codierung Ihrer eigenen beginnen, sollten Sie überprüfen, ob sie nicht bereits in WordPress Core enthalten ist.
In dieser Serie werde ich ein Widget aus einem Plugin erstellen, das ich für ein früheres Tutorial entwickelt habe, und zwar zum Erstellen einer kontextsensitiven Navigation in der Seitenleiste. In diesem Lernprogramm habe ich eine Funktion entwickelt, die Benutzer mit etwas Code-Kenntnissen in ihr Design einbinden oder an einen Hook anhängen können, aber es wäre für Benutzer einfacher, die Navigation über ein Widget hinzuzufügen.
Die Widgets-API enthält die Funktionen, die Sie zum Erstellen Ihres Widgets benötigen. Lassen Sie uns einen Blick auf jeden von ihnen werfen.
Erstens gibt es vier Widget-Funktionen:
is_active_widget ()
: ein bedingter Tag, der prüft, ob ein einzelnes Widget aktiv ist. Verwechsle es nicht mit is_active_sidebar ()
, Hier wird geprüft, ob einem bestimmten Widgetbereich Widgets hinzugefügt wurden.the_widget ()
: ein Template-Tag, das ein Widget außerhalb der Widget-Bereiche anzeigt.register_widget ()
: Die Funktion zum Registrieren eines Widgets, das ich später in dieser Serie verwenden werde.unregister_widget ()
: Hebt die Registrierung eines Widgets auf, was bedeutet, dass es für Benutzer nicht mehr über den Widgets-Bildschirm verfügbar ist.Es gibt auch fünf interne Funktionen:
wp_register_widget_control ()
: erstellt die Steuerelemente im Widgets-Bildschirm, sodass Benutzer die Einstellungen des Widgets ändern können.wp_unregister_widget_control ()
: registriert das Widget-Steuerelement, das über registriert wurde wp_register_widget_control ()
.wp_convert_widget_settings ()
: Dies konvertiert die Einstellungen eines Widgets von der Einzelinstanz in ein Multi-Widget.wp_get_widget_defaults ()
: Kernfunktion, sollte nicht von Plugin- oder Theme-Entwicklern verwendet werdenwp_widget_description ()
: erstellt eine Widget-Beschreibung, die auf dem Widgets-Bildschirm angezeigt wird.Um auf diese internen Funktionen zuzugreifen, verwenden Sie die WP_Widget
Klasse. Dies ist eine Konstruktorklasse, die Sie erweitern können, um weitere Widgets zu erstellen.
Dieses einführende Tutorial hat hoffentlich den Appetit auf die Erstellung eigener Widgets angeregt. Im nächsten Tutorial zeige ich Ihnen, wie Sie Ihr Widget kodieren und registrieren.