Anmelden oder neues Benutzerkonto anlegen.

 

Doku » Seiten


Inhaltsverzeichnis

[bearbeiten] Einführung

Seiten, oder WordPress-Seiten sind wie Beiträge, nur dass sie viel mehr können als Beiträge und nicht in der normalen Blog-Chronologie vorkommen. Du kannst Seiten benutzen, um so sehr viel Inhalt zu verwalten. Seiten gibt es seit der Version 1.5.

Aber wie agieren die Seiten in WordPress eigentlich? Das Ziel dieses Dokuments ist, zu erklären was eine Seite ist und was es nicht ist, was sie kann und um euch einige Beispiele näher zu bringen.

[bearbeiten] Begriffe die im Artikel verwendet werden

Zum Verständnis im Artikel: Die WordPress-Seite wird im Verlauf des ganzen Artikels fett gedruckt erscheinen. Andere Seiten wie z.B. ein HTML-Dokument werden normal geschrieben. Bei Doppeldeutigkeiten wird die WordPress-Seite als statische Seite bezeichnet. Beachtet bitte dazu den unten stehenden Hinweis.

[bearbeiten] Was ist eine Seite?

Beiträge sind zeitorientierte Objekte. Du schreibst sie zu einer bestimmten Zeit und diese Zeit definiert ihren Kontext.

Seiten hingegen werden meistens benutzt, um Informationen über dich selbst oder deinen Blog oder deine Webseite darzulegen. Das ist ja soweit zeitlos. Als Beispiel, du schreibst einen Beitrag über das was du an einem bestimmten Morgen gedacht hast ("Frühstück war toll"), aber auf einer Seite schreibst du eher etwas, das weniger zeitabhängig ist ("Bei dieser Seite geht es um Frühstück").

Natürlich kannst du mit deinem WordPress und dessen Features machen was du willst. Seiten können benutzt werden um Informationen außerhalb des Blogs darzustellen. Experimentiere damit und sei kreativ. Und, wie immer, hab Spaß dabei!

Einige Beispiele, die sich als Seiten eignen, wären Copyright, Kontakt-Informationen, Über mich, Über die Seite, rechtliche Hinweise, usw.

Im Prinzip sind Seiten den Beiträgen sehr ähnlich, denn beide haben eine Überschrift und Inhalt und du kannst die gleichen Templates zur Präsentation für sie nutzen, um ein identisches Aussehen der verschiedenen Seiten zu erreichen. Die Seiten haben dennoch einige Unterschiede, mit denen sie sich klar von den Beiträgen abgrenzen.

[bearbeiten] Was Seiten sind

[bearbeiten] Was Seiten sind

  • Seiten sind gut für weniger zeitabhängigen Inhalt als bei Beiträgen.
  • Seiten können gut organisiert werden. (Unterseiten)
  • Seiten können verschiedene Seiten-Templates benutzen, die aus unterschiedlichen Template-Dateien bestehen, sowie Template Tags und anderen PHP Code beinhalten können.

[bearbeiten] Was Seiten nicht sind

  • Seiten sind keine Beiträge. Sie "wandern" nicht durch die Startseite und gehören keiner Kategorie an.
  • Seiten sind keine Dateien. Sie werden genauso wie Beiträge in der Datenbank gespeichert.
  • Du kannst zwar Template Tags oder PHP Code in ein Seiten-Template einfügen, aber nicht direkt als Inhalt über die Beitrag Schreiben-Oberfläche. (Beachte: Das kannst du mit Hilfe von Plug-Ins erreichen, die PHP Code in einem Beitrag ausführen, wie z.B. RunPHP.

[bearbeiten] Seiten erstellen

Um eine neue Seite zu erstellen, musst du dich als Administrator anmelden und auf Schreiben klicken. Darunter findest du dann den Seite schreiben Link. Beachte: Deine .htaccess muss beschreibbar sein, wenn die Permalinks bei der neu angelegten Seite funktionieren sollen. Ansonsten musst du nach dem Anlegen der Seite manuell die .htaccess aktualisieren.

[bearbeiten] Die Seiten auflisten

WordPress kann automatisch eine Liste deiner erstellten Seiten auf der Webseite darstellen, z.B. in der Seitenleiste. Hierzu muss das Template Tag wp_list_pages() an der entsprechenden Stelle stehen.

Du kannst die Seiten auch mit einem einfachen Link aufrufen. Du willst zum Beispiel im Footer zum Impressum verlinken, der Link würde dann folgendermaßen aussehen:

<a title="Impressum" href="wordpress/?page_id=14">Impressum</a>

wenn du Permalinks deaktiviert hast, oder

<a title="Impressum" href="wordpress/impressum/">Impressum</a>

wenn du Permalinks aktiviert hast.

Beachte: Deine .htaccess muss beschreibbar sein, wenn die Permalinks bei der neu angelegten Seite funktionieren sollen. Ansonsten musst du nach dem Anlegen der Seite manuell die .htaccess aktualisieren.

[bearbeiten] Seiten organisieren

Genauso wie du Unterkategorien hast, kannst du auch eine Seitenhierarchie mit mehreren Unterseiten haben.

Als Beispiel nehmen wir an, du erstellst eine WordPress-Seite für einen Reiseagenten und du möchtest für jeden Kontinent sowie jedes Land eine individuelle Seite erstellen. Du beginnst, indem du eine Seite namens "Europa" erstellst, die allgemeine Informationen für Reisen rund um Europa beinhaltet. Dann würdest du verschiedene Unterseiten erstellen, wie z.B. "Deutschland", "Österreich" und "Schweiz". Eine weitere individuelle Seite erstellst du für "Nordamerika" mit den entsprechenden Unterseiten "USA", "Kanada", "Costa Rica" und "Kuba". Deine Seite würde dann folgendes auflisten:

  • Europa
    • Deutschland
    • Österreich
    • Schweiz
  • Nordamerika
    • USA
    • Kanada
    • Costa Rica
    • Kuba

Das alles lässt sich im Administrationsmenü von Seite schreiben erledigen. Hierzu ist das drop-down-Formularfeld entscheidend. Bei WP 1.5 befindet es sich rechts über dem Textfeld. WP-2.0-Nutzer finden die "Übergeordnete Seite" rechts neben dem Textfeld. Jetzt musst du, um eine Seite als Unterseite festzulegen, die übergeordnete Seite festlegen. Wenn du also gerade die Seite zur "Schweiz" schreibst, würdest du die übergeordnete Seite "Europa" auswählen. Wenn du aber keine übergeordnete Seite auswählen möchtest, lässt du die Auswahl bei "keine" und die Seite wird als Hauptseite in der Hierarchie erscheinen. Die Permalinks werden die Seitenhierarchie ebenfalls reflektieren.

Wie im obigen Beispiel würden die Permalinks für die Schweiz wie folgt aussehen:

http://example.com/europa/schweiz/

[bearbeiten] Seiten Templates

Individuelle Seiten können ein spezifisches, selbst erstelltes Seiten Template benutzen. Dieses Template wird dann das Standard page.php Template sozusagen außer Kraft setzen.

WordPress kann für verschiedene Seiten verschiedene Templates benutzen. Unter dem Textfeld (WP 1.5) oder rechts neben dem Textfeld (WP 2.0) findet ihr eine weitere drop down Box in der ihr das "Template der Seite" auswählen könnt. Beachte: Um diese Auswahl überhaupt sehen zu können, muss mindestens ein Template im aktiven Theme vorhanden sein.

[bearbeiten] Standard-Theme, Seiten-Templates

Das Standard-Theme enthält drei Seiten-Templates zu deinem Nutzen:

  • page.php - standard Seiten Template: zeigt Seiten Inhalt
  • archives.php - ignoriert Seiten Inhalt und zeigt stattdessen eine Liste des Monatsarchiv und des Archiv sortiert nach dem Beitragstitel (Kategorisch)
  • links.php - ignoriert Seiten Inhalt und zeigt stattdessen die vorhandenen Links anhand von get_links_list

[bearbeiten] Welches Template wird benutzt, um eine Seite anzuzeigen?

WordPress sucht nach verschiedenen Template-Dateien im aktiven Theme. Die erste gefundene wird benutzt, um die Seiten anzuzeigen. Hier eine Liste der Suchreihenfolge:

  1. Das ausgewählte Template für die Seite
  2. page.php
  3. index.php

[bearbeiten] Eigene Templates erstellen

Um ein neues Seiten Template zu erstellen, musst du erst eine entsprechende Datei erstellen. Diese nennen wir olaf.php. Ganz am Anfang dieser Datei muss folgendes hin:

<?php
/*
Template Name: Olaf
*/
?>

Der obige Code macht aus der olaf.php eine Template Datei namens "Olaf". Selbstverständlich kann "Olaf" mit jedem beliebigen Text ersetzt werden. Der Template Name "Olaf" erscheint dann in der drop down Box als Template.

Du kannst der Datei fast jedem Namen geben solange die Endung .php ist. Unter reservierte Theme Dateinamen findest du eine Auflistung darüber, welche Namen du der Datei nicht geben solltest.

Was nach den 5 Zeilen Code kommt bleibt dir überlassen. Ab da kannst du die Seiten die das Olaf Template benutzen kontrollieren. Schau dir die Template_Tags an um dir einen Überblick über die verschiedenen WordPress Template Tags zu verschaffen. Sogar mit Beschreibung und Beispielen! Es ist aber sicher von Vorteil wenn du als Vorlage die page.php oder index.php nimmst und dann die 5 Zeilen Code oben einfügst. So musst du lediglich eine Datei bearbeiten und nicht gleich von null auf neu erstellen. Einige Beispiele dazu findest du weiter unten. Sobald du das Template erstellt hast und es in dem Ordner deines aktiven Themes gelegt hast, steht es dir aus Auswahl beim schreiben der Seite zu Verfügung.

[bearbeiten] Beispiele von Seiten und Templates

Im Folgenden findest du eine Liste mit Beispielen. Du kannst gern ergänzen oder hinzufügen.

[bearbeiten] Archive mit Inhalt

Ein Seiten Template welches im oberen Bereich den Inhalt zeigt und drunter eine Liste eines Monatsarchivs und Kategoriearchivs. Es wurde für das standard WordPress Theme (Kubrick) entwickelt, wird aber sicher mit kleinen Anpassungen auch bei anderen Themes funktionieren.

Speichere folgendes als arc-inh.php:

<?php
/*
Template Name: Archive mit Inhalt
*/
?>

<?php get_header(); ?>

<div id="content" class="widecolumn">

 <?php if (have_posts()) : while (have_posts()) : the_post();?>
 <div class="post">
  <h2 id="post-<?php the_ID(); ?>"><?php the_title();?></h2>
  <div class="entrytext">
   <?php the_content('<p class="serif">Weiterlesen..</p>'); ?>
  </div>
 </div>
 <?php endwhile; endif; ?>
 <?php edit_post_link('Edit this entry.', '<p>', '</p>'); ?>

</div>
<div id="main">

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

<h2>Monatsarchiv:</h2>
  <ul>
    <?php wp_get_archives('type=monthly'); ?>
  </ul>

<h2>Kategoriearchiv:</h2>
  <ul>
     <?php wp_list_cats(); ?>
  </ul>

</div>
<?php get_footer(); ?>

[bearbeiten] WordPress als CMS

Mit dem Seiten Feature seit Version 1.5, kann man WordPress als einfaches CMS verwenden.

[bearbeiten] Eine Seite als Startseite benutzen

In Verbindung mit dem Static Front Page Plug-In kann man egal welche Seite als Startseite verwenden. Das Plug-In modifiziert die query Abfrage und macht aus einer einfachen Seite eine Startseite.

Wenn die Seite als Startseite fungiert und ein spezifisches Template für die Seite gewählt wurde, wird dieses Template durch das Plug-In sozusagen deaktiviert und es wird die home.php verwendet. Das Seiten Template wird aber weiterhin gelten, wenn die Seite als normale Seite aufgerufen wird.

Mit Version 2.1 ist diese Funktion direkt, auch ohne Plug-In verfügbar. Unter den Einstellungen -> Lesen kann jede statische Seite oder auch ein Beitrag als Startseite gesetzt werden.

[bearbeiten] Eine Seite einbinden

Du möchtest vielleicht auch einige Seiten auf deiner Seite einbinden. So kannst du ohne großen Aufwand verschiedene Elemente deiner Seite bearbeiten. Das Plug-In Include Page vereinfacht dieses Unternehmen.

<?php
/*
Plugin Name: Include Page
Version: 1.0
Plugin URI: http://beetle.cbtlsl.com/categories/include_page
Author: Brent Loertscher
Author URI: http://beetle.cbtlsl.com
Description: Adds an include_page() function to include the contents of a page in a template.
Installation:
1.  Download the file http://beetle.cbtlsl.com/wp-plugins/include_page.phps
2.  Rename the file to include_page.php and put it in your wp-content/plugins/directory.
3.  Activate the plugin from your WordPress admin 'Plugins' page.
4.  Make use of the function in your template.
function include_page ($post_id) - include page with corresponding post_id
*/
/*
Copyright (c) 2005, Brent Loertscher
Released under the GPL license
All rights reserved.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR 
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND 
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 
THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
function include_page ($post_id) {
   global $wpdb;
   $pages = $wpdb->get_results ("SELECT " .
      "post_content " .
      "FROM $wpdb->posts " .
      "WHERE ID = " . $post_id);
    foreach ($pages as $page) {
       echo $page->post_content;
    }
}
?>

[bearbeiten] Den Blog nicht im "Hauptverzeichnis" erscheinen lassen

Nehmen wir an dein WordPress läuft unter http://beispiel.de/. Sagen wir dein Blog soll unter http://beispiel.de/blog/ laufen und die Seiten sollen unter http://biespiel.de/seite1/ abrufbar sein.

Das erste was du machen musst ist eine Startseite erstellen. Das machst du indem du eine home.php in deinem Theme Ordner erstellst. Als nächstes brauchen wir ein Blog Template. Also wieder in deinem Theme Ordern, aber diesmal eine blog.php. In der kommt folgender Code:

<?php
/*
Template Name: Blog
*/
?>

<?php query_posts('cat=-0'); //gets all posts
    load_template( TEMPLATEPATH . '/index.php'); //loads index
 ?>

Im Administrations-Menü unter Seite schreiben erstellst du eine neue Seite mit dem Template "blog". Nenn diese Seite "Blog". Fertig. Als letztes solltest du noch deine Permalink Struktur aktualisieren. Die Struktur sollte mit "/blog/" beginnen. Sprich: "/blog/%year%/%monthnum%/%postname%/". Jetzt hast du ein kleines WordPress CMS.

[bearbeiten] Hinweise zu Bezeichnungen

Eine Seite kann statisch oder dynamisch sein. Statische Seiten sind Seiten die nach der Erstellung nicht mehr erneut aktualisiert oder bearbeitet werden müssen, wenn ein Leser die Seite besucht. Zum Vergleich, dynamische Seiten müssen jedes Mal nachdem sie besucht wurden, aktualisiert werden; der entsprechende Code der generiert werden soll wurde vorher vomn Autor festgelegt, nicht von der Seite selbst. Dynamische Seiten benutzen PHP Code der jedes Mal erneut ausgewertet wird um so dynamischen Inhalt zu erzeugen.

Fast alles in WordPress wird dynamsich generiert, auch Seiten. Alles was du und Andere in WordPress schreiben (Beiträge, Seiten, Kommentare, Blogrolls, Kategorien, usw.) wird in deiner MySQL Datenbank gespeichert. Wenn deine Seite besucht wird, wird die Datenbank abgefragt und die Information anhand der Theme Templates ausgegeben. Demnach, WordPress Informationen sind dynamisch, auch die Seiten.

Eine statische Seite wäre zum Beispiel ein HTML Dokument (ohne PHP Code) die du zusätzlich zu deiner WordPress Seite erstellt hast. Zum Beispiel eine Seite über dich. Das Problem mit rein statischen Seiten ist die Wartung. Sämtliche Änderungen die du in den WordPress Einstellungen, Themes und Templates machst werden in dem HTML Dokument nicht vorkommen. Das WordPress Seiten Feature wurde just aus diesem Grund entwickelt. Benutzer müssen fortan mit der Verwendung von Seiten nicht mehr bei jeder kleinen Änderung am Design oder Layout in den Quelltext eingreifen. Ganz im Gegenteil, ist die Seite richtig angelegt, werden jegliche Änderungen ohne Eingriff übernommen.

Trotz der dynamischen Beschaffenheit der Seiten, bezeichnen viele Leute sie dennoch als Statische. Im Web bedeuten die Begriffe statisch und dynamisch genau das was oben beschrieben wurde. Aber in der Allgemeinheit jedoch, bedeutet statisch mehr oder weniger "gekennzeichnet durch den Mangel an Veränderungen". Es ist klar zu erkennen, dass diese Definition eher benutzt wird um eine solche Art von Seite zu beschreiben. Es ist auch einfach zu erkennen, warum Seiten als statisch definiert werden; Beiträge kommen und gehen, Seiten bleiben da wo sie sind. Sie sind von Anfang an da, weil sie den Zweck haben gewisse Informationen zu präsentieren, die es immer gilt zu präsentieren. (z.B. Informationen über dich selbst, eine Beschreibung des Blogs, usw.)

Mit anderen Worten, eine Seite besteht aus statischer Information, ist aber dynamisch generiert. Just aus diesem Grund, sind die Bezeichnungen "statisch" oder "dynamisch" beide zutreffend um das Feature der WordPress Seite zu beschreiben. Damit wir aber nicht durcheinander kommen: Seiten sind dynamisch, auch wenn ihr Inhalt statisch ist. Dieser Artikel bezieht sich nicht darauf, dass Seiten statische Seiten sind.




Original Dokument: http://codex.wordpress.org/Pages