Wenn der Besucher nicht eine bestimmte Seite, Artikel oder Kategorie wählt, ist die index.php für die Standard-Anzeige in Wordpress zuständig. Auch für Anfänger ist es einfach eine index.php zu erstellen. Die Index Seite wird in Wordpress mit Hilfe des “Loop” für die Beiträge erstellt. Ohne einer Schleife(Loop) würde nur ein Beitrag angezeigt werden.
Eine einfache voll funktionsfähige index.php
<?php
get_header();
if (have_posts()) :
while (have_posts()) : the_post();
the_content();
endwhile;
endif;
get_sidebar();
get_footer();
?>
- get_header() ruft die header.php auf (Informationen für den Kopfbereich).
- Im Loop(Schleife) werden die Beiträge mit the_content() aufgerufen.
- get_sidebar() ruft die sidebar.php auf (z.B. eine Seitenleiste auf der rechten Seite).
- get_footer() ruft die footer.php auf (Für den Fussbereich der Seite).
Es gibt viele Möglichkeiten seine Seite schöner aussehen zu lassen. Hier einige Beispiele für die Gestaltung.
Der Loop
Der Loop ist eine Schleife, die solange ausgeführt wird, wie der vorgegebene Wert wahr ist.
Wordpress überprüft zuerst ob alle Dateien vorhanden sind. Als nächstes werden die Einstellungen aus dem Adminbereich abgefragt. Die Anzahl der Beiträge, die angezeigt werden sollen, oder ob Kommentieren erlaubt ist, etc.
Diese Informationen werden anschließend aus der Datenbank geholt und in einer Variablen gespeichert. Der Loop greift auf diese Variable zu.
Der Anfang des Loop
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
- Zuerst wird mit “have_posts()” geprüft, ob Beiträge vorhanden sind.
- Mit der “while”-Schleife wird “the_post()” solange ausgeführt bis die Anzahl der im Benutzermenü definierten Anzahl an Beiträgen erreicht ist.
Titel, Datum und Autor
<h2 id="post-">
<a href="/" rel="bookmark" title="Permalink zu ">
<?php the_title(); ?></a></h2>
<?php the_time('d. F Y') ?> von <?php the_author() ?>
- Es wird ein Link zum Artikel in der Überschrift gesetzt.
- Danach die Zeit wann der Beitrag verfasst wurde und von wem er geschrieben wurde.
Der Inhalt des Beitrages
<div class="entry">
<?php the_content('Weiterlesen »'); ?>
</div>
- Mit “the_content()” wird der Inhalt des Beitrages angezeigt.
- Die Option “Weiterlesen” erscheint dort wo beim Beitragschreiben der Weiterlesen-Link(more tag) positioniert wurde.
Weitere Angaben
Informationen unter jeden Beitrag, wie die Kategorie, Bearbeiten oder Kommentare.
<p class="postmetadata">
Abgelegt in <?php the_category(', ') ?>
<strong>|</strong>
<?php edit_post_link('Bearbeiten','','<strong>|</strong>'); ?>
<?php comments_popup_link('Keine Kommentare »', '1 Kommentar »', '% Kommentare »'); ?></p>
- Bearbeiten erscheint auf der Seite nur, wenn der Autor angemeldet ist.
- Wenn Kommentare für den Beitrag im Benutzermenü erlaubt wurde, wird ein Link angezeigt. Klickt ein Nutzer auf den Kommentar-Link, wird die Artikel-Seite mit den Kommentaren aufgerufen.
Das Ende des Loop
<?php endwhile; ?>
Mit dem Behfehl “endwhile” wird der Loop(Schleife) beendet. Angaben die bei jedem Beitrag erscheinen sollen, müssen davor gesetzt werden.
Angaben am Ende der Seite
Wenn die Seite im Benutzermenü auf 5 Artikel anzeigen gesetzt ist, erscheint ab Artikel sechs eine zweite Seite. Dazu kann nach dem Loop eine Navigation gesetzt werden.
<div class="navigation">
<div class="alignleft"><?php posts_nav_link('','','« Zurück') ?></div>
<div class="alignright"><?php posts_nav_link('','Weiter »','') ?></div>
</div>
Die Navigation ist ausserhalb von Loop, aber innerhalb von der if-Abfrage, Sie wird nur angezeigt wenn Beiträge vorhanden sind.
Wenn kein Beitrag gefunden wurde.
<?php else : ?>
<h2 class="center">Nichts gefunden</h2>
<p class="center"><?php _e("Es wurde kein Beitrag gefunden."); ?></p>
Mit dem “else”-Befehl kann eine Ausgabe durchgeführt werden, wenn kein Beitrag gefunden wurde.
Ende der Beiträge
<?php endif; ?>
“endif” beendet die if-Abfrage für die Beiträge.
Beispiel der kompletten index.php
<?php get_header(); ?>
<div id="content" class="narrowcolumn">
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); // Anfang des Loop ?>
<h2 id="post-<?php the_ID(); ?>">
<a href="/<?php the_permalink() ?>" rel="bookmark" title="Permalink zu <?php the_title(); ?>">
<?php the_title(); ?></a></h2>
<?php the_time('d. F Y') ?> von <?php the_author() ?>
<div class="entry">
<?php the_content('Read the rest of this entry »'); ?>
</div>
<p class="postmetadata">
Abgelegt in <?php the_category(', ') ?>
<strong>|</strong>
<?php edit_post_link('Bearbeiten','','<strong>|</strong>'); ?>
<?php comments_popup_link('Keine Kommentare »', '1 Kommentar »', '% Kommentare »'); ?></p>
<?php endwhile; // Ende des Loop ?>
<div class="navigation">
<div class="alignleft"><?php posts_nav_link('','','« Seite vor') ?></div>
<div class="alignright"><?php posts_nav_link('','Weiter »','') ?></div>
</div>
<?php else : ?>
<h2 class="center">Nichts gefunden</h2>
<p class="center">
<?php _e("Es wurde kein Beitrag gefunden."); ?></p>
<?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Es wurde noch eine ID und Klasse für die Gestaltung in der CSS-Datei eingefügt.
Weitere Themen:
Sidebar oder Footer-Widget erstellen