Voor niet-codeerders die een WordPress-site maken, zijn widgets geweldig. Hiermee kunt u menu's, lijsten, feeds, tekst en nog veel meer toevoegen aan widgetgebieden die niet beperkt hoeven te worden tot de zijbalk. Veel thema's bevatten nu widgets in het voettekstkader en de grote themakaders bevatten vaak widgetgebieden op meerdere locaties, zoals de koptekst en vóór en na de inhoud..
In deze vijfdelige serie begeleid ik je bij het maken van je eerste widget. De serie gaat over:
In dit deel introduceer ik widgets en de widget-API.
Om een widget te maken, verlengt u de WP_Widget
klasse, die een aantal functies omvat:
Bovendien gebruikt u de register_widget ()
functie om de widget die u hebt gemaakt te registreren.
Je kunt vrijwel alles in een widget plaatsen: statische tekst, de uitvoer van een databasequery, een feed van een andere site en meer. Het is echter belangrijk om te onthouden dat gebruikers verwachten dat widgets in een gedefinieerd gebied op de pagina passen, dus de uitvoer van uw widget mag niet te groot zijn.
WordPress wordt geleverd met een reeks ingebouwde widgets, dus controleer voordat je begint met het coderen van je eigen widgets of het nog niet in WordPress core staat.
In deze serie ga ik een widget maken van een plug-in die ik heb ontwikkeld voor een eerdere zelfstudie, over het maken van contextgevoelige zijbalknavigatie. In die tutorial ontwikkelde ik een functie die gebruikers met enige kennis van code in hun thema kunnen laten vallen of aan een haak kunnen vastmaken, maar het zou voor gebruikers gemakkelijker zijn om de navigatie via een widget toe te voegen.
De Widgets-API bevat de functies die u nodig hebt om uw widget te maken. Laten we ze eens bekijken.
Ten eerste zijn er vier widget-functies:
is_active_widget ()
: een voorwaardelijke tag die controleert of een individuele widget actief is. Verwar het niet met is_active_sidebar ()
, die controleert of widgets zijn toegevoegd aan een specifiek widgetgebied.the_widget ()
: een sjabloontag die een widget buiten widgets weergeeft.register_widget ()
: de functie om een widget te registreren, die ik later in deze serie zal gebruiken.unregister_widget ()
: registreert een widget ongedaan, wat betekent dat het niet langer beschikbaar is voor gebruikers via het Widgets-scherm.Er zijn ook vijf interne functies:
wp_register_widget_control ()
: maakt de bedieningselementen op het Widgets-scherm zodat gebruikers de instellingen van de widget kunnen wijzigen.wp_unregister_widget_control ()
: registreert het widgetbeheer dat is geregistreerd via wp_register_widget_control ()
.wp_convert_widget_settings ()
: dit converteert de instellingen van een widget van één exemplaar naar meerdere widgets.wp_get_widget_defaults ()
: kernfunctie, niet voor plug-in of themaontwikkelaarswp_widget_description ()
: maakt een widgetbeschrijving die op het Widgets-scherm wordt weergegeven.Om toegang te krijgen tot deze interne functies, maakt u gebruik van de WP_Widget
klasse. Dit is een constructorklasse, die u kunt uitbreiden om extra widgets te maken.
Deze inleidende tutorial heeft hopelijk je verlangen naar het maken van je eigen widgets gewekt. In de volgende tutorial laat ik je zien hoe je je widget kunt coderen en registreren.