Möglichkeiten der Webentwicklung mit WordPress

Nicht nur die vielen Themes und Plugins sowie die einfache Bedienung haben WordPress zum CMS-Marktführer gemacht. Kaum eine andere Websoftware bekommt den Spagat zwischen Einfachheit und Anpassungsfähigkeit so gut hin wie WordPress. Zwar lässt sich das Open-Source-System beliebig umschreiben, aber es geht auch anders. Welche Möglichkeiten stellt die Webentwicklung mit WordPress bereit, um individuelle und angepasste Webprojekte zu programmieren?

Individuelle Seiten- und Inhaltstypen

WordPress ist längst nicht mehr auf Blogs und statische Homepages beschränkt. Mit Custom Fields, Custom Posttypes und Taxonomien lassen sich maßgeschneiderte Webseiten mit innovativem Aufbau und ungewöhnlichen Inhalten entwickeln. Posttypes sind die grundlegenden Einheiten des CMS. Benutzerdefinierte Artikeltypen machen es möglich, spezielle Inhalte wie Webshop-Produkte, Coupons, Veranstaltungen, Portfolios und vieles mehr zu erstellen. Solche Inhaltstypen enthalten oft zusätzliche Informationen, für die keine geeigneten Einträge in den vorhandenen Datenstrukturen existieren. Hier kommen die Custom Fields ins Spiel. Diese Key-Value-Paare erweitern Artikel um frei definierbare Daten, die sich in den Frontend- und Backend-Seiten anzeigen und zur Filterung von Inhalten nutzen lassen. Mögliche Einsatzbereiche umfassen Metadaten, Preise und Produkteigenschaften sowie ID-Nummern wie ISBN, ISMN und EAN-Codes. Um die Inhalte angemessen zu kategorisieren, dienen die Taxonomien. Das sind Ordnungssysteme, die neben benutzerdefinierten Kategorien auch hierarchische Klassifikationen und Baumstrukturen erlauben.

Erweiterungen mit Hooks und API-Funktionen

Obwohl sich der gesamte Code des CMS umschreiben lässt, werden für die Webentwicklung mit WordPress zumeist Plugins geschrieben. Dafür liefert die Websoftware zwei wichtige Konzepte: Hooks und API-Funktionen. Hooks entsprechen im Wesentlichen den Events wie sie beispielsweise bei GUI-Toolkits zum Einsatz kommen. Mit den Funktionen add_action() und add_filter() lassen sich Callback-Funktionen registrieren, um in die Abläufe einzugreifen, welche die Frontend- und Backend-Seiten generieren. Action-Hooks ermöglichen das Hinzufügen neuer Elemente, das Laden externer Dateien sowie die Registrierung von Widgets, Inhaltstypen und Ähnliches. Mit Filter-Hooks hingegen lassen sich Daten und Elemente bearbeiten, die bereits geladen wurden. Ein typisches Beispiel ist das Verkürzen eines Textes mit angehängtem “Weiterlesen” Link. Um direkt mit WordPress zu interagieren, stellt das CMS verschiedene Programmierschnittstellen (APIs: Application Programming Interfaces) zur Verfügung. Die APIs umfassen Funktionen für den Zugriff auf Metadaten, Inhalte, Einstellungen, Datenbankzugriffe, Theme-Modifikationen und vieles weitere.

Aufbau vernetzter Webanwendungen

Selbst Webservices und komplexe Webapplications lassen sich mit WordPress entwickeln. In dem CMS ist die JavaScript-Technik AJAX bereits fest eingebaut. Das Kürzel steht für “Asynchronous JavaScript and XML” und bezeichnet eine Methode, mit der Webbrowser Daten vom Server nachladen können. Das ermöglicht interaktive User-Interfaces ohne ein ständiges Neuladen der Seite. Darüber hinaus unterstützt WordPress die Kommunikationstechniken XML-RPC und REST, mit denen sich vernetzte Webanwendungen bauen lassen. Den Einsatzbereichen sind keine Grenzen gesetzt. Browser-Games und Webmail-Clients sind ebenso mögliche wie betriebliche Managementportale oder Schnittstellen für ERP-Software und Warenwirtschaftssysteme.

Veröffentlicht in Wordpress.

Ralf Bösenberg

Als gelernter Fachinformatiker begeistere ich mich für viele aktuelle IT Themen. Ich befasse mich mit Programmierung unter VB.Net, VB6, Linux, verbringe viel Zeit mit der Gestaltung und Administration von Internet Servern und Web Seiten und bin gerne und jederzeit ein freundlicher und kompetenter Ansprechpartner für Kunden und Interessenten.

www.Ralf.Bösenberg.info

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert