Im Wunschbuch kam die Frage auf, was es denn eigentlich mit den Widgets in WordPress auf sich hat.
Widgets ermöglichen es, die einzelnen Elemente der Sidebar (Anzeige der letzten Beiträge, der Kategorien, der Tag-Cloud, …) bequem im Backend zu verwalten. Via Drag & Drop kann man die gewünschten Widgets einfach in die Sidebar hineinziehen oder wieder herausziehen – mühselig im Quellcode herumzufriemeln, ist daher nicht mehr notwendig.
Voraussetzungen
Widgets funktionieren ab der WordPress-Version 2.0. Das verwendete Theme muss jedoch “widgetsized” sein, sprich, es muss Widgets unterstützen. Die meisten Themes besitzen diese Eigenschaft – ob auch dein Theme dazu zählt, findest du heraus, indem du die sidebar.php öffnest: bei einem widget-fähigen Theme steht dort ganz oben etwas von dynamic_sidebar.
Natürlich kannst du dein Theme auch so modifizieren, dass es Widgets unterstützt, falls es das bis jetzt nicht tun sollte. Hierzu kommen wir später.
Widgets einbauen
Gehe im Backend auf den Reiter “Themes” und dort dann auf den Reiter “Widgets”.
Je nachdem, ob du über ein oder mehrere Sidebars verfügst, siehst du dort die Felder, die die Sidebar(s) darstellen. Darunter befindet sich ein Pool mit verschiedenen Boxen darin: dies sind die einzelnen Widgets. Du kannst das gewünschte Widgets einfach anklicken und in die Sidebar ziehen, um es dort einzubauen. Ebenso kannst du die Reihenfolge der Widgets innerhalb der Sidebar durch Drag & Drop verändern.
Wenn sich keine Widgets in der Sidebar-Box befinden, wird die Sidebar so dargestellt, wie es der Code der sidebar.php vorgibt.
Widgets hinzufügen
WordPress bringt mittlerweile standardmäßig eine ganze Reihe an Widgets mit: die Anzeige der Kategorien, das Archiv, ein Suchfeld, eine Übersicht über die letzten Beiträge, …
Wenn dir diese nicht genügen und du eine bestimmte Funktion in deiner Sidebar unterbringen möchtest, kannst du eine Vielzahl an zusätzlichen Widgets einbauen. Ein großes Archiv der verfügbaren Widgets findest du beispielsweise hier.
Um ein Widget zu installieren, lädst du es zunächst in das Verzeichnis /widgets im Plugins-Ordner auf deinem Webspace hoch (wp-content/plugins/widgets). Eventuell musst du das Verzeichnis “widgets” erst noch erstellen.
Anschließend gehst du im Backend auf den Reiter “Plugins” und aktivierst das jeweilige Widget dort, so wie du auch ein Plugin aktivierst: einfach anklicken.
Wenn du nun wieder in die Widget-Übersicht wechselst, taucht das neue Widget unten im Pool auf.
ein Theme widget-fähig machen
Wenn du ein Theme verwendest, was Widgets bisher nicht unterstützt, kannst du dies leicht ändern. Es ist nicht schwierig.
Alles, was du tun musst, ist das Bearbeiten von zwei Dateien: der sidebar.php und der functions.php
Ich gehe hier davon aus, dass deine Sidebar in der üblichen Form vorliegt: die einzelnen Elemente sind als Listen-Elemente in einer ungeordneten Liste untergebracht und die jeweiligen Überschriften sind in h2-Tags eingefasst.
Bisher sieht deine sidebar.php also so ähnlich aus wie diese hier:
<ul id="sidebar">
<li id="ueber">
<h2>Über mich</h2>
<p>Hallo, ich bin ein Blog.</p>
</li>
<li id="links">
<h2>Links</h2>
<ul>
<li><a href="http://webseite.de"Link</a></li>
</ul>
</li>
</ul>
Jetzt bauen wir das Ganze so um, dass unterschieden wird: wenn Widgets in die Sidebar gezogen werden, dann sollen nur diese dargestellt werden; wenn die Sidebar keine Widgets erhält, soll sie so angezeigt werden wie bisher. Dazu benötigen wir eine Prise PHP:
<ul id="sidebar">
<?php if ( !function_exists('dynamic_sidebar')
|| !dynamic_sidebar() ) : ?>
<li id="ueber">
<h2>Über mich</h2>
<p>Hallo, ich bin ein Blog.</p>
</li>
<li id="links">
<h2>Links</h2>
<ul>
<li><a href="http://webseite.de">Link</a></li>
</ul>
</li>
<?php endif; ?>
</ul>
Das war’s auch schon in der sidebar.php. Nun fügen wir noch eine Datei hinzu (sofern dein Theme bisher keine functions.php aufweist):
<?php
if ( function_exists('register_sidebar') )
register_sidebar();
?>
Diese Datei speicherst du, wie gesagt, als functions.php und lädst sie in das jeweilige Theme-Verzeichnis hoch.
Das war’s auch schon! :-)

Haha. Ich Dödel hatte ich functions.php-Datein nicht mal mit hochgeladen, weil ich nach dem Prinzip gegangen bin, was ich nicht versteh, das brauch ich auch nicht. *g*
Danke für das Tut, werde es demnächst mal testen… ^^
Jetzt hab sogar ich verstanden, wozu das alles gut ist. =)
Kann man die Widgets denn auch noch formatiren und so?
Liebe Grüße.
Merci Beaucoup!
Kannst du vielleicht auch mal erklären, wie man zwei Widget Sidebars einfügt? Oder funktioniert das nach dem gleichem Prizip?
LG
hej!
Schon wieder etwas, was ich nicht weiß: Kann man Widgets statt über diese “dynamic sidebar” auch per Hand einfügen. Also z.B. für die Tagcloud kann man ja auch einfach “get_tagcloud” oder so in den Quelltext schreiben. Speziell möchte ich das “Letzte Kommentare” Widget benutzen und zwar ohne dieses dynamische. LG
Hej! :-)
Das ist kein Problem – guck mal hier, da wird erklärt, wie man die letzten Kommentare an einer beliebigen Stelle auf der Seite anzeigen lassen kann. Strenggenommen läuft das allerdings immer noch über ein Widget.
Liebe Grüße
Hm. Ich werde glaub ich demnächst mal ausprobieren wie mir das besser gefällt, entweder Plugin oder Widget. Danke
Dankeschön für das Tutorial!