Widgets und Widgetleisten in WordPress verwenden und gestalten

Sidebar und WidgetWenn man WordPress als CMS einsetzen will, dann möchte man gerne die Widgetsleiste (meist rechts) gestalten bzw. für unterschiedliche Aufgaben unterschiedliche Leisten verwenden.

Was Widgets sind und wie sie mit WordPress verwendet werden, wird hier erklärt: https://train-und-coach.de/widgets-und-wordpress.html

Ganz vage gesprochen, könnte man die Widgets als Schnittstellen zu den Navigationsmöglichkeiten ansehen, so wie z.B. auch SAP Schnittstellen in Datenbanksystemen gibt.

Bei manchem Theme von WordPress sind mehrere Leisten schon vorkonfiguriert, bei den meisten Themes gibt es aber nur eine Leiste. Ich verwende hier das sehr beliebte Mistylook-Theme, das standardmäßig auch nur eine Widget-Leiste kennt.

Es ist nicht schwierig mehrere Widget-Leisten zu verwenden. Dazu muss man aber Code ändern bzw. einfügen und zwar in der functions.php, wo sowohl die Widget-Leisten wie die Widgets selbst festgelegt werden.

Hat man nur eine Widget-Leiste dann gibt es Code der Art wie

if ( function_exists('register_sidebar') )
	register_sidebar(array(
		'before_widget' => '

‚, ‚before_title‘ => ‚

‚, ‚after_title‘ => ‚

‚, ));

Um mehrere Widget-Leisten (in WordPress heißen diese Sidebar) zu verwenden, muss man diesen Code ab der 2. Zeile kopieren und jeweils um eine Zeile ergänzen, die der jeweiligen Sidebar einen Namen gibt.

if ( function_exists('register_sidebar') ){
	register_sidebar(array(
		'before_widget' => '

‚, ‚before_title‘ => ‚

‚, ‚after_title‘ => ‚

‚, ’name‘ => ’start‘ )); register_sidebar(array( ‚before_widget‘ => ‚

‚, ‚before_title‘ => ‚

‚, ‚after_title‘ => ‚

‚, ’name‘ => ‚blog‘ )); register_sidebar(array( ‚before_widget‘ => ‚

‚, ‚before_title‘ => ‚

‚, ‚after_title‘ => ‚

‚, ’name‘ => ‚unten‘ )); };

Bei diesem Beispiel werden die Namen start, blogund unten verwendet. Vergessen Sie nicht die Hochkommata.

Vergessen Sie auf keinen Fall die geschweiften Klammern nach der ersten und vor der letzten Zeile, denn nur so ist die Deklaration der Funktion Sidebar komplett. Wichtig auch das ; am Ende, denn es folgt noch PHP-Code.

Anschließend kann man bereits im WordPress-Backend den Sidebars Widgets zuweisen. Diese werden allerdings erst angezeigt, wenn man

1. Die neuen Sidebars als php-Dateien anlegt.
2. In den Templates der Seiten Code umschreibt, der diese Php-Dateien einbindet.

Zum 1. kopiert man einfach die Sidebar.php und erhält zwei neue php-Dateien, die man zum Beispiel sidebar2.php und sidebar-unten.php nennt.

Dann muss man den Code in einer Zeile jeder Sidebar abändern, um die jeweilige Benennung aus der function.php wirksam werden zu lassen. Hier die 3 Zeilen:

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar('blog') ) : else : ?>

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar('seite') ) : else : ?>

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar('unten') ) : else : ?>

Es werden also lediglich die Namen in Hochkomma in die vorher leere Klammer eingesetzt.

Nun zum 2. und letzten Schritt. Die zweite Sidebar soll auf den statischen Seiten erscheinen. Dafür ist das Template page.php verantwortlich. Ich binde die zweite Sidebar (sidebar2.php) in die page.php ein, indem ich die Zeile zum Erzeugen der Sidebar abändere. Diese steht ganz am Schluss der Datei.

<?php get_sidebar();?>
<?php include (TEMPLATEPATH . '/sidebar2.php');?>

Die oberste Zeile wird durch die unterste ersetzt.

9 thoughts on “Widgets und Widgetleisten in WordPress verwenden und gestalten

  1. Arbeite gerade an meinem eigenen WP-Theme für einen News-Bereich und hatte da noch ein paar Unklarheiten bei der Sidebar und bin über Google-Suche prompt hier gelandet. Danke für die Infos. Haben Licht ins Dunkle gebracht.

  2. Lieber Rainer,

    ich bin in Sachen WP und php ein Autodidakt und verzweifle des öfteren an den eher mageren Auskünften im Codex und anderen Standardquellen. Heute möchte ich mich bei Ihnen bedanken. Wann immer ich mit dem Kopf vor die Wand laufe, weil ich den Gesamtzusammenhang nicht sehen kann, d.h. die Art wie verschiedene Teile des WP-Codes aufeinander bezogen sind, finde ich bei Ihnen irgendetwas, das Licht ins Dunkel bringt. Ihre Texte und Erläuterungen sind mir eine unschätzbare Hilfe im Begreifen von WP und oft auch im Erlernen von php. Ich danke sehr dafür.

  3. Danke für die Tipps!

    Hast Du auch Tipps für die Einbindung oder Erstellung von Widgets für andere Blogs parat, zum Beispiel für Blog.de!

  4. Hallo Teja,
    der Blogbeitrag beschäftigt sich nur mit
    Widgets und Widgetleisten in WordPress.
    Ich würde auch nur WordPress einsetzen, wenn ich einen Blog haben will bei ich mehr als
    Widgets und Widgetleisten selbst gestalten kann.

  5. Hallo Rainer,

    vielen Dank für die wirklich einfache und ausführliche Beschreibung. Ich versuche gerade ein paar meiner Blogs mit verschiedenen eigenen Widgets etwas interessanter und benutzerfreundlicher zu gestalten, da ommt deine Einführung in das Thema natürlich sehr gelegen, danke 🙂

    Gruß
    Marcus

  6. Hallo!
    Schöne Anleitung, leider komme ich nur bis zu „Hier die 3 Zeilen:“, das Feld danach, das den Code beinhalten soll, bleibt leider leer.
    Genauso ist es mit dem Feld darunter (der 2. und letzte Schritt)
    Kann man das fixen?
    Danke 🙂

Die Kommentarfunktion ist geschlossen.