Eigenes WordPress-Theme erstellen

Das Wordpress-Theme erweitern: Die Seiten (page.php)

∅ 4.8 / 32 Bewertungen

Die Seiten (page.php)

Auf dieser Seite

Den Seiten fällt in WordPress die Aufgabe zu, Inhalte außerhalb des Blog-Kreislaufes zu verwalten: Impressum, Über uns/mich etc. Mittlerweile wurden die Seiten so weit aufgewertet, dass einige Blog-Autoren lange Artikel oder Artikel-Serien gerne auf Seiten auslagern.

Zudem werden die Seiten dann verwendet, wenn WordPress auf Websites eingesetzt wird, die keinen Blog-Charakter aufweisen (WordPress als "klassisches" CMS). Daher lohnt es sich auf jeden Fall, sich mit den Seiten bzw. der page.php auseinanderzusetzen. Wie bei der single.php greift auch hier das System auf die index.php zu, wenn keine page.php im Themes-Ordner vorhanden ist.

Um die page.php zu erstellen, öffnen Sie einfach die index.php und speichern Sie diese als page.php ab. Nun geht es darum nicht benötigte Bestandteile zu entfernen. Hier ein mögliches Beispiel eine auf das nötigste reduzierte page.php:

<?php get_header(); ?><div id="inhalt"><?php if (have_posts()) : while (have_posts()) : the_post(); ?><h2><?php the_title(); ?></h2><div class="der-beitrag"><?php the_content(); ?> <?php edit_post_link(); ?>
</div> <!-- Ende des jeweiligen Beitrags -->

<?php endwhile; else: ?>
<p>Tut mir leid, es wurde kein passender Beitrag gefunden.</p>
<?php endif; ?>

</div><!-- /#inhalt --><?php get_sidebar(); ?><?php get_footer(); ?>

Das war's. Gerade mal 20 Zeilen Code sind notwendig um eine einfache page.php zu realisieren. Ich habe die Datei auf das Nötigste reduziert und alles Unnötige entfernt: die verlinkte Überschrift, die Anzahl der Kommentare, die Kommentarfunktion und die Weiterblättern-Funktion.

So schaut dann eine Seite aus, wenn ich die page.php hochgeladen habe:

abbildung-3-die-page-php-im-einsatz

Abbildung 3: Die page.php im Einsatz

Die Seiten-Templates

Es könnte möglich sein, dass Sie Seiten erstellen wollen, die sich im Aussehen und der Funktionalität von der page.php unterscheidet. Für solche Eventualitäten ist es vorgesehen, dass man verschiedene Seiten-Templates erstellen und einsetzen kann. Nehmen wir mal an, Sie möchten neben der page.php auch ein Seiten-Template haben wo die Kommentare möglich sind:

<?php/*Template Name: Seite mit Kommentaren*/?>

<?php get_header(); ?><div id="inhalt"><?php if (have_posts()) : while (have_posts()) : the_post(); ?><h2><?php the_title(); ?></h2><div class="der-beitrag"><?php the_content(); ?> <?php edit_post_link(); ?>
</div> <!-- Ende des jeweiligen Beitrags -->

<?php comments_template(); /* Der Kommentarbereich */ ?>

<?php endwhile; else: ?>
<p>Tut mir leid, es wurde kein passender Beitrag gefunden.</p>
<?php endif; ?>

</div><!-- /#inhalt -->

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Diese Datei, welche ich unter page-kommentare.php abgespeichert habe, unterscheidet sich nur an zwei Stellen von der page.php . Diese beiden Stellen habe ich hervorgehoben. Schauen wir uns die erste Stelle etwas genauer an:

<?php
/*
Template Name: Seite mit Kommentaren
*/
?>

Dieses Code-Fragment kommt ganz am Anfang eines Seiten-Templates und es handelt sich hier um einen PHP-Kommentar, der WordPress signalisiert, dass diese Template-Datei ein Seiten-Template ist. Wenn ich die neu erstellte page-kommentare.php in den Themes-Ordner hochlade, dann habe ich im Backend die Möglichkeit neuen und bestehenden Seiten dieses Template zuzuweisen.

abbildung-4-die-zuweisung-eines-seiten-templates

Abbildung 4: Die Zuweisung eines Seiten-Templates

Weise ich jetzt dieser Seite dieses neue Template zu, kann man in Zukunft diese Seite auch kommentieren, weil sie sich von der page.php dadurch unterscheidet, dass Sie folgendes Code-Fragment beinhaltet: <?php comments_template(); ?> .

abbildung-5-die-gleiche-seite-diesmal-mit-kommentarfunktion

Abbildung 5: Die gleiche Seite, diesmal mit Kommentarfunktion

Sie können mehrere solcher Seiten-Templates erstellen. Diese Templates können nicht nur Anpassungen im visuellen, sondern auch im funktionellen Bereich haben. Schauen Sie sich bitte folgende Datei an:

<?php 
/* 
Template Name: Archiv 
*/ 
?> 
<?php get_header(); ?> 

<div id="inhalt"> 

<?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

<h2><?php the_title(); ?></h2> 

<div class="der-beitrag"> 
<?php the_content(); ?> <?php edit_post_link(); ?> 
</div> <!-- Ende des jeweiligen Beitrags --> 

<h3>Das Monats-Archiv</h3> 
<ol> 
<?php wp_get_archives('show_post_count=1'); ?> 
</ol> 

<h3 id="kategorien">Alle Kategorien</h3> 
<ol> 
<?php wp_list_categories('orderby=name&show_count=1&title_li='); ?> 
</ol> 

<h3>Die letzten 25 Beiträge</h3> 
<ol> 
<?php wp_get_archives('type=postbypost&limit=25'); ?> 
</ol> 

<?php endwhile; else: ?> 
<p>Tut mir leid, es wurde kein passender Beitrag gefunden.</p> 
<?php endif; ?> 

</div><!-- /#inhalt --> 

<?php get_sidebar(); ?> 
<?php get_footer(); ?> 

Erstellen Sie zuerst diese Template-Datei und speichern Sie sie unter archiv.php ab. Anschließend laden Sie das Dokument in den Themes-Ordner hoch. Erstellen Sie danach eine neue Seite. Geben Sie dieser Seite eine Überschrift, etwas Inhalt und weisen Sie Ihr das neue Seiten-Template mit dem Namen "Archiv" zu. Publizieren Sie die Seite und schauen Sie sich die Auswirkungen an.