WordPress Standard Widgets deaktivieren

Die Zeiten ändern sich.

Dieser Beitrag scheint älter als 14 Jahre zu sein – eine lange Zeit im Internet. Der Inhalt ist vielleicht veraltet.

Nicht immer möchte man alle Widgets, die der WordPress Core so mitbringt, im Theme aktiv haben. Das haben sich auch die Entwickler von WordPress gedacht und eine entsprechende Funktion mitgeliefert anstatt die Widgets in ein Plugin, gern auch als Core Plugin, ausgelagert.

Für Theme-Autoren bleibt nur der Weg, in die functions.php des Themes eine kleine Funktion abzulegen, die die Widgets, welche man nicht mag, deaktiviert. Der folgende Syntax schaltet alle Standard-Widgets ab. Er sollte daher angepasst werden, je nach Anforderung.


// unregister all default WP Widgets
function unregister_default_wp_widgets() {

	unregister_widget('WP_Widget_Pages');

	unregister_widget('WP_Widget_Calendar');

	unregister_widget('WP_Widget_Archives');

	unregister_widget('WP_Widget_Links');

	unregister_widget('WP_Widget_Meta');

	unregister_widget('WP_Widget_Search');

	unregister_widget('WP_Widget_Text');

	unregister_widget('WP_Widget_Categories');

	unregister_widget('WP_Widget_Recent_Posts');

	unregister_widget('WP_Widget_Recent_Comments');

	unregister_widget('WP_Widget_RSS');

	unregister_widget('WP_Widget_Tag_Cloud');
}

add_action('widgets_init', 'unregister_default_wp_widgets', 1);

Die Funktion unregister_widget() benötigt als Parameter die Übergabe der Klasse, damit ist der Code hier nur ab Version 2.8 nutzbar, im Vorfeld wurden Widgets anders unterstützt.

Wie man eigene Widgets ab WordPress Version 2.8 erstellt, kann man beispielsweise im Beitrag WordPress 2.8 Widget erstellen von Micha nachlesen.

Von Frank Bültge

bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.