Vom Blogsystem zum Content-Manager: WordPress als CMS
5-Minuten-Installation
Als technische Voraussetzungen benötigt WordPress (WP) mindestens PHP 4.3, MySQL 4.0 oder höher und das mod_rewriteApache-Modul. Empfehlenswert ist PHP ab Version 5 und die mittels der GNU-Internationalisierungsbibliothek „Gettext“ eingedeutschte Version von WordPress, die auf WordPress Deutschland [1] zum Download bereitsteht.
Nach dem Entpacken liegen die Ordner „wp-admin“, „wp-content“ und „wp-includes“ und einige Dateien im Verzeichnis „wordpress“. Zunächst müssen in der config-sample.php die eigenen Zugangsdaten zur MySQL-Datenbank eingetragen und die Datei anschließend als config.php gespeichert werden. Danach wird das gesamte Verzeichnis auf den eigenen Webspace hochgeladen. Mit Eingabe der URL „meineDomain.tld/wp-admin/install.php“ beginnt die kurze Installation. Geben Sie hier den gewünschten Titel der Website und eine gültige E-Mail-Adresse ein und klicken Sie auf „installieren“. Nach erfolgreicher Installation wird das erste Adminpasswort angezeigt und separat per E-Mail zugesandt. Damit können Sie sich in den Administrationsbereich unter „meineDomain.tld/wp-admin/“ von WordPress einloggen.
Statische Startseite als klassisches Element eines CMS
Wie bei Weblogs üblich, zeigt WordPress in der Standardeinstellung die letzten zehn Artikel in chronologisch umgekehrter Reihenfolge sowohl auf der Startseite als auch in allen Kategorie-, Tags-, Autoren- und Archivübersichtsseiten. Im Adminbereich kann man dies unter Einstellungen => Lesen ändern. Hat man hier die bevorzugte statische Seite ausgewählt, ist das rudimentärste CMS mit WordPress einsatzbereit.
Vom Standard zum individuellen Design
WordPress bringt zwei „Themes“ als Standarddesign für das Frontend an. Die dazugehörigen Dateien befinden sich im Ordner wp-content/themes/. In diesen Ordner muss auch jedes andere Theme nach dem Entpacken hochgeladen werden. Auswählen und aktivieren kann man das Design im Adminbereich unter „Design“. Bei mehr als 3.000 WordPress-Themes, die weltweit kostenlos zur Verfügung stehen, findet man sicher eines, das zumindest von der Struktur den eigenen Vorstellungen entspricht. Manche der Magazin-Designs bieten sogar eine „options page“ im Backend an, mit der man wesentliche Teile der Konfiguration per Mausklick definiert.
Bei der Auswahl sollte man auch auf die Lizenz des Themes und
eventuellen Support achten. Immer öfter gibt es WordPress-Premium-Themes, für die ein Entwicklerbeitrag zu leisten ist. Hier ist
allerdings Support und Sicherheit gewährleistet, wenn man auf der
Webseite des Designers eine Kontaktmöglichkeit oder ein Forum findet. Die Bekanntheit von WordPress wird leider auch dazu genutzt, versteckte Links oder gefährlichen Code in WordPress-Themes einzuschleusen. Daher ist es aus Sicherheitsgründen ratsam, Themes immer nur von der Webseite des Theme-Autors herunterzuladen.
Widgets – kleine Helferlein
WordPress ermöglicht das Anpassen der Sidebar mit Widgets. Diese Funktionserweiterung muss jedoch im aktivierten Theme implementiert sein. Im Adminbereich unter Designs => Widgets kann man diese dann verwalten. Viele Bereiche eines Themes lassen sich durch Widgets steuern, allerdings funktionieren alle widgetfähigen Themes auch ohne aktivierte Widgets. Standard-Widgets gibt es unter anderem für die gesamte Navigation mit statischen Seiten, die Links zu den Kategorien und zu anderen Webseiten, die Anzeige der Archive, den Tageskalender, die letzten Artikel und Kommentare, die Tagwolke, RSS-Feed-Links, die Auflistung der Autoren, die Suchfunktion sowie für eine sehr große Anzahl an Text-Widgets und für den Login-Bereich.
Um ein Theme widgetfähig zu machen, muss die functions.php, die
als Teil des Themes im Theme-Ordner liegt, bearbeitet werden – man kann diese Datei aber auch selbst erstellen. Außerdem benötigt man die sidebar.php, die nicht notwendiger, aber
dennoch Teil jedes WP-Themes ist.
In der functions.php gibt man die Anzahl der Widgets und die
Formatierung derselben an. WordPress hat für die Ausgabe der Widgets in
der Sidebar hier eine verschachtelte ungeordnete Liste vorbereitet, diese
kann überschrieben werden. Der Code in der functions.php sollte dann so aussehen:
<?php // Widget Settings if ( function_exists('register_sidebar') ) register_sidebar(array( 'name' => 'My Navigation', 'before_widget' => '', 'after_widget' => '', 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>', ));
Listing 1
Hier wird zuerst abgefragt, ob die Funktion „register_sidebar“ vorhanden ist, dann wird ihr ein frei wählbarer Name gegeben. Vor und nach dem Widget wird in diesem Beispiel kein zusätzlicher HTML-Code benötigt, daher werden die beiden nächsten Parameter leer gelassen. Der Widget-Titel soll hier als <h2>-Tag mit der CSS-Klasse „widgettitle“ formatiert werden.
Nun kann die functions.php gespeichert und in den Theme-Ordner hochgeladen und die sidebar.php für die Widgets vorbereitet werden. In der Sidebar wird der folgende Code eingefügt:
<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar('My Navigation') ) : else : ?> <!--hier ist der gesamte andere Inhalt der sidebar.php--> <?php endif; ?>
Listing 2
Widgets sind mächtig und vielfältig, wenn man allerdings eine sehr individuelle Navigation je Kategorie, je statischer Seite oder je Artikel anbieten möchte, ist es einfacher, auf Widgets zu verzichten und mit den „template tags“ und „conditional tags“ von WordPress zu arbeiten.
Namen weisen den Weg
Der Code für die Anzeige der Inhalte ist von WordPress in separaten Dateien notiert. So stellt der Quelltext in „category.php“ die Kategorienübersicht dar, die „single.php“ zeigt einen einzelnen Artikel, die „category-14.php“ ist nur für die Kategorie mit der ID 14 zuständig und die „single-123.php“ nur für den Artikel mit der ID 123. Der Name einer Datei entscheidet, ob WordPress sie automatisch erkennt oder nicht. Genauso ist es bei den „template tags“, die dynamische Inhalte aus der Datenbank holen, oder bei den „conditional tags“, die das Anzeigen dieser Inhalte an genau definierbaren Stellen der Website ermöglichen.
„wp_list_pages“, „wp_list_categories“, „the_author“, „the_author_url“, „the_content“ sind nur einige Beispiele der 120 Template-Tags und 18 Conditional-Tags, die im Codex [2] von WordPress.org ausführlich und immer up-to-date dokumentiert sind.
Im folgenden Beispiel sollen nur auf der statischen Seite „News“ die Links aus der Kategorie mit der ID 10, „Freunde“, angezeigt werden. Die ID der Linkkategorie findet man im Adminbereich unter Verwalten=>Linkkategorie.
<?php /* wenn das page news ist*/ if ( is_page('news')) { ?> <ul> <?php wp_list_bookmarks('category=10'); ?> </ul> <?php } ?>
Listing 3
Das Standard-Array des Template-Tags „wp_list_bookmarks“ bietet 17 Konfigurationsmöglichkeiten an.
Die große Freiheit der „custom fields“
Die „custom fields“ oder benutzerdefinierten Felder können jede erdenkliche Zusatzinformation zu einem Artikel oder einer Seite erhalten. Scrollt man beim Schreiben eines Artikels nach unten, sieht man dort die erweiterten Einstellungen und benutzerdefinierten Felder. Schlüssel und Wert sind absolut frei belegbar. Bild oder Link, die besondere Gestaltung einer Artikelserie, Ergänzung der HTML-Meta-Daten oder auch eine eigene CSS-Datei für nur diesen Beitrag sind möglich.
Belegt man etwa ein benutzerdefiniertes Feld mit dem Schlüssel „meine Autoren“ und dem Wert „Peter, Hanni, Lieschen“, kann dieser Wert an beliebiger Stelle folgendermaßen ausgegeben werden:
<?php $key="meine Autoren"; echo get_post_meta($post->ID, $key, true);?>
Listing 4
WordPress als Redaktionssystem
Um WordPress als Redaktionssystem nutzen zu können, bedarf es einiger Zusatzfunktionen, die Nutzungs- und Zugriffsberechtigungen regeln oder unterschiedliche Schreibpanels pro Usergruppe oder sogar pro Autor anbieten. Erweiterungen der Funktionen von WordPress werden „Plugins“ genannt. Diese Plugins sind immer in den Ordner „wp-content/plugins/“ hochzuladen.
Es sind derzeit knapp 2.000 Plugins im offiziellen Plugin-Verzeichnis [3] zu finden. Wenn die Pluginautoren genug Feedback erhalten, sind viele Plugins bei der Veröffentlichung einer neuen WordPress-Version bereits für diese einsatzbereit, andernfalls sind meist drei Wochen nach einem neuen Release alle prominenten Plugins erneuert. Über neue Versionen eines Plugins wird man im Adminbereich unter „Plugins“ informiert.
Role Manager
Der Role Manager ermöglicht eine komfortable Verwaltung der Benutzerrechte. Thomas Schneider hat das Plugin von Owen Winkler übernommen und weiterentwickelt [4]. Nach der Aktivierung findet man im Adminbereich im Menü „Benutzer“ vier weitere Seiten: „Rollen“, „Berechtigungen“, „Rollen/Berechtigungen allgemein“ und „Hilfe zu Rollen/Berechtigungen“.
Auf der Seite „Rollen“ kann man an vorhandene Rollen neue Berechtigungen und Userlevels vergeben, neue Rollen definieren oder die Standard-Rollen von WordPress umbenennen. Neue Berechtigungen erstellt man auf der Seite „Berechtigungen“. Einen Überblick über alle vergebenen Rollen und Berechtigungen findet man auf der Seite „Rollen/Berechtigungen allgemein“. Auch wenn das Plugin gelöscht wird, bleiben alle Einstellungen erhalten. Es ist in jedem Fall ratsam, sich zuerst die Hilfe-Seite durchzulesen.
Custom Write Panel
Mit dem Custom-Write-Panel-Plugin kann man – in Kombination mit dem
Role Manager – unterschiedliche Schreibpanels pro Rolle und Autor
erstellen. Erstmalig veröffentlicht und dokumentiert wurde es von Joshua Sighar (rhymedcode.net); die für WordPress 2.5 funktionierende Version findet man bei David Yeiser, der dieses Plugin für sein „WP Contact Manager“-Theme [5] erneuerte.
Nach der Aktivierung des Plugins können grundlegende Einstellungen im Adminbereich unter Einstellungen => Custom Write Panel vorgenommen werden. Die Custom Write Panels an sich erstellt man dann unter Adminbereich=> Verwaltung => Custom Write Panels. Unter Zuhilfenahme der benutzerdefinierten Felder kann für jeden Autor die Schreiboberfläche so gestaltet werden, dass dieser seine Inhalte einfach und mit allen notwendigen Angaben veröffentlichen kann.
Get Post Approval 0.3 Beta
Trotz aller Vorhersagen arbeitet dieses Plugin von Francesco Terenzani (terenzani.it) ausgezeichnet auch unter WP 2.5. Nach der Aktivierung kann man unter Einstellungen => Approval genau bestimmen, wann wo welcher Artikel zu sehen sein darf und wer die Berechtigung hat, einen Artikel zu genehmigen.
Plugins, die das Leben eines Admins erleichtern | ||
Plugin | Autor | Website |
Extended Comment Options | Mark Kenny | beingmrkenny.co.uk |
Damit lassen sich Kommentare und Pings/Trackbacks bequem websiteweit ein- und ausschalten. | ||
Text Replace | Scott Reilly | coffee2code.com |
Text Replace schützt vor Abmahnungen. Mit CPL kann man unter anderem die letzten Kommentare, die letzten Artikel, die zuletzt kommentierten Artikel, Zufallsartikel, die zuletzt erneuerten Artikel und die zukünftig erscheinenden Artikel anzeigen lassen und dies auch noch in sehr unterschiedlicher Art und Weise. Der Autor hat auch das sehr nützliche Customizable Post Listings Plugin (CPL) herausgegeben. |
||
WordPress Database Backup Plugin | Austin Matzko | ilfilosofo.com |
Das Plugin verschickt Datenbank-Backups bequem per E-Mail. |
Fazit
Um aus WordPress ein klassisches CMS zu machen, benötigt man inklusive Installation ganze 10 Minuten und weitere 30 Minuten, um alle nötigen Plugins herunterzuladen, zu entpacken, hochzuladen, zu aktivieren und einzustellen. Magazin-Themes für den passenden Look gibt es kostenlos und kostenpflichtig.
Für kleinere und mittlere Projekte ist WordPress gut nutzbar, weil es einfach zu administrieren und leicht erweiterbar ist. Mit der vorliegenden Anleitung sollten aber auch weniger erfahrene Nutzer in der Lage sein, ihr Redaktionssystem einzurichten.
Wirklich interessant alte WordPress ARtikel zu lesen. Das CMS hat sich wirklich enorm entwickelt.
Früher für Blogger, heute tag täglich bei unserer Agentur genutzt