Angenommen, Sie möchten auf der Homepage Ihrer WordPress-Installation vier Plätze einrichten, auf denen Sie vier besondere Seiten vorstellen möchten. Also in der Art des Themas Executive von Studiopress, wie Sie an den vier Plätzen im blauen Bereich des Themas sehen können:

Wenn Ihr Thema so etwas nicht zulässt, dann können Sie ihm das durchaus beibringen. Und wie das geht, soll im Folgenden beschrieben werden. Wir haben diese Methode erfolgreich für die WordPress Version 2.9.2 anwenden können.
Zusätzliche Widget-Plätze für die Homepage
Richten Sie zusätzliche “sidebars” ein, die allerdings nur auf der Homepage erscheinen sollen. Dazu öffnen Sie im WordPress Editor die Datei functions.php und bearbeiten Sie die Datei folgendermassen:
if ( function_exists('register_sidebar') ) {
register_sidebars(2, array('name'=>'Sidebar %d'));
register_sidebars(4, array('name'=>'Homepage Box %d'));
register_sidebars(2, array('name'=>'Footer Box %d'));
}
Damit erhalten Sie folgende Sidebar-Pätze:

Für unsere Homepage werden wir die vier Plätze Homepage Box 1 bis 4 benötigen. Vielleicht können Sie ja auch in Ihrem Projekt die neu geschaffenen Footer Boxen und die beiden Sidebars benötigen. Wenn nicht, dann entfernen Sie einfach die entsprechenden register_sidebar-Zeilen.
Legen Sie nun ein neues eigenes Template für die Homepage an, damit diese vier Plätze nicht auf allen Seiten erscheinen.
Eigenes WordPress-Template für die Homepage als Seite
Kopieren Sie die Datei page.php, und benennen Sie die Kopie z.B. homepage.php. Tragen Sie ganz zu Beginn der neuen Datei die folgenden Zeilen ein. Benutzen Sie bitte für Arbeiten an .php-Dateien niemals Word oder ähnliche Textverarbeitungsprogramme, sondern immer nur reine Texteditoren (Notepad, Ultraedit, TextWrangler, etc.)
<?php
/*
Template Name: Homepage
*/
?>
Legen Sie in WordPress eine neue Seite “Home” an, richten Sie diese Seite als Startseite der WordPress-Installation ein (Einstellungen -> Lesen), und wählen für diese Seite das neue Template “Homepage” (rechts bei “Attribute”). Hätten Sie oben als Template Name “Frontpage” vergeben, dann sehen Sie in der Auswahlliste auch “Frontpage”. In unserem Fall ist es eben “Homepage”.
Sehen wir uns nun eine mögliche Variante der Datei homepage.php an:
<?php get_header(); ?><div id="content_box" class="homepage"><?php if (have_posts()) : while (have_posts()) : the_post(); ?> ... die Loop: content der Homepage ... <?php endwhile; endif; ?><div id="homepage_bottom"><div id="box_1" class="box"> <ul class="sidebar_list"> <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Homepage Box 1')) : ?> <!-- Ersatz content --> <?php endif; ?> </ul> </div><!-- end #box_1 --> <div id="box_2" class="box"> <ul> <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Homepage Box 2')) : ?> <!-- Ersatz content --> <?php endif; ?> </ul> </div><!-- end #box_2 --> <div id="box_3" class="box"> <ul> <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Homepage Box 3')) : ?> <!-- Ersatz content --> <?php endif; ?> </ul> </div><!-- end #box_3 --> <div id="box_4" class="box"> <ul> <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Homepage Box 4')) : ?> <!-- Ersatz content --> <?php endif; ?> </ul> </div><!-- end #box_4 --></div><!-- end #homepage_bottom --> </div><!-- end #content_box --> <?php get_footer(); ?>
Es gibt hier nur die dynamischen Sidebars Homepage Box 1 bis 4, andere dynamische Sidebars kommen nicht vor. Das mag in Ihrem Fall natürlich anders sein.
Im <div> mit der id “box_1″ gibt es die PHP-Funktion dynamic_sidebar('Homepage Box 1'), die die Widgets anzeigen wird, die Sie in der Sidebar “Homepage Box 1″ platzieren werden. Entsprechendes gilt für die Homepage Boxen 2, 3 und 4.
In allgemeine Sprache übersetzt bedeutet das if-Statement: “Wenn es keine dynamischen Sidebars gibt ODER wenn die dynamische Sidebar ‘Homepage Box 1′ keinen Inhalt hat, dann liefere <!-- Ersatz content --> aus.” Wenn aber die dynamische Sidebar ‘Homepage Box 1′ mittels Widget zugewiesenen Inhalt hat, dann gibt sie diesen Inhalt auch gleich aus.
Jetzt muss noch im Stylesheet style.css für diese vier Plätze angegeben werden, dass sie nebeneinander und nicht untereinander erscheinen sollen. Die folgende CSS-Angabe beschränkt sich auf die dafür notwendigen Angaben. Behübschen müssen Sie selbst.
div.box {
width: 25%;
float: left;
}
div.box ul.sidebar_list {
padding-right: 10px;
}
Da wir 4 Boxen nebeneinander zeigen wollen, wird als Breite 25% gewählt. Sollten Sie mit 3 Plätzen arbeiten, setzen Sie width: 33%;.
Plugin zum Vorstellen von Seiten in WordPress-Sidebars
Abschließend muss noch ein Widget installiert werden, mit dem Sie bequem Seiten auswählen können, die auf den 4 neuen Widget-Plätzen auf der Homepage vorgestellt werden sollen. Dazu benutzen Sie zum Beispiel das Plugin “Featured Page Widget”, das Sie auf http://featuredpagewidget.grandslambert.com/ finden.
Wenn Sie das Plugin installieren und aktivieren, können Sie es auf jeweils eine “Homepage Box” ziehen und darin die Seite wählen, die vorgestellt werden soll.
Soll auch ein Vorschaubild der Seite dargestellt werden, so können Sie dazu leider nicht das neue WordPress-Feature “Beitrags-Miniaturbild” verwenden, das es seit kurzem gibt (zumindest nach aktuellem Stand des Plugins: Version 1.2). Sie müssen dazu ein benutzerdefiniertes Feld auf der jeweiligen Seite anlegen, die Sie mittels Featured Page Widget vorstellen möchten. Als Name wählen Sie dafür “featured-image”, und als Wert geben Sie eine volle URL zum Bild an, das Sie als Vorschaubild für diese Seite zeigen möchten.
Ergebnis
Das war’s dann auch schon. So könnte Ihre Homepage nun aussehen (Detailansicht):

Ähnliche Artikel:
- Erstellung der Navigation in WordPress 3.0
- Navigation in WordPress mit mehr CSS-Klassen
- Tabs für WordPress
Tags: frontpage, homepage, sidebar, widget




Mai 15th, 2010 at 07:23
Mensch, das ist ja der Hammer. Ich wußte gar nicht, dass das in der Form mit WordPress funktioniert. Supi Tipp. Du hast soeben einen neuen Stammbesucher gewonnen
Juli 7th, 2010 at 13:44
[...] Sie können aber auch gleich die Sache noch benutzerfreundlicher machen, indem Sie in Ihrem Thema eigene Plätze für Ihre Navigationsmenüs einrichten. Im Prinzip funktioniert das analog zur Registrierung von Sidebars. [...]