Archiv der Kategorie: WordPress

Das WordPress-Datenbankmodell – wie kommt man ran?

Wir basteln uns eine Testumgebung

Um an das WordPress-Datenbankmodell überhaupt ranzukommen, sollte man sich mit phpmyadmin ein bißchen auskennen. Dafür ist es allerdings notwendig, sich bei seinem Provider in die Datenbankverwaltung einzuklinken, und davon rate ich für unerfahrenere Benutzer dringend ab. Auch für den erfahreneren Programmierer ist es ein wenig fahrlässig, auf den Echtdaten herumzufuhrwerken. Investieren sie lieber die berühmten fünf Minuten und installieren sie sich erstmal eine WordPress-Instanz rein zum Testen, am besten in einer eigenen Datenbank, die ebenfalls nur zum Testen verwendet wird. Normalerweise können sie bei ihrem Provider mehrere Datenbanken anlegen, das sollte eigentlich kein Problem sein.

Die ideale Test-Lösung: ein lokaler Webserver

Schöner und sicherer ist natürlich eine lokale WordPress-Testumgebung, die gar nicht ins Internet hinausgestellt wird. Ich verwende seit vielen Jahren Xampp mit Apache als lokalen  Web- und MySQL-Server, und hatte noch nie Kompatibilitätsprobleme oder sonstige Schwierigkeiten  damit.

Googlen sie für die Einrichtung mal nach „xampp wordpress“, da ist nicht viel dabei. Damit ist es überhaupt kein Problem, sich auf dem eigenen PC eine lokale Testumgebung mit WordPress einzurichten, die sie im Notfall (zuviel Pfusch auf der Datenbank gebaut ;)) einfach plattmachen und neu aufziehen können.

Suchen sie sich ein Theme aus, schreiben sie ein paar Beiträge, laden sie einige Fotos hoch, legen sie ein paar Seiten an. Und dann kanns losgehen. Rufen sie phpmyadmin auf, und wir werfen mal einen ersten Blick auf die WordPress-Tabellen, im nächsten Artikel.

WordPress – oben hui

Der Ursprung: Blogs für alle

WordPress wurde ursprünglich dafür entwickelt, die Gestaltung eines ansehnlichen und funktionalen persönlichen Blogs auch für Anwender mit wenig oder keinen Programmierkenntnissen zu ermöglichen.  Das sieht man auch heute noch an dem zentralen Fokus auf die Beitragsseiten, da steckt noch viel Historie mit drin. WordPress wird allerdings heutzutage weit über das ursprüngliche Konzept hinaus als CMS verwendet, aber dazu später mehr.

WordPress als Front End Designer- da gibts nicht viel zu meckern

Eins muß man dem mittlerweile auch schon alten Mädchen WordPress lassen: das Front End Design ist dank unzähliger Themes für jeden denkbaren Zweck einfach genial und genial einfach einzurichten. Wenn man die berühmte Fünf-Minuten-Installation geschafft hat, nur noch ein passendes Theme auswählen und loslegen – aussehen tut das Ergebnis immer gut. Seiten und Beiträge lassen sich wirklich anwenderfreundlich verwalten, auch eine ansehnliche Menüstruktur ist kein Problem, der Anwender muß sich wirklich nur um die Inhalte kümmern und sich weder mit PHP-Code noch mit der Datenbank herumschlagen.

Und wenns doch nicht reicht – für jeden Zweck das passende Plugin?

Die Anzahl der WordPress-Plugins muß heutzutage in die Millionen gehen, es gibt Plugins für jeden nur denkbaren Zweck, die meisten davon kostenlos. Ich will hier gar nicht ins Detail gehen, sonst sitze ich nächste Woche noch an diesem Artikel, es seien nur ein paar Stichworte genannt. Ob Onlineshop, Portfolio-Präsentation, Bildergalerie, Buchungssystem, Diskussionsforum, Firmenpräsenz, Tauschbörse, Hobbyseite oder noch vieles, vieles mehr, alle möglichen Arten von Webseiten lassen sich mit Hilfe von freien Plugins oder auch kostenpflichtigen WordPress-Erweiterungen realisieren.  Eins muß man aber mal ganz deutlich sagen: mit der Auswahl eines für seine Zwecke geeigneten Plugins ist der Endanwender fast immer überfordert. Es gibt zwar -zig Seiten zu  Themen wie:
Die 10 besten Plugins für XYZ (setzen sie hier einen beliebigen Zweck ein) mit WordPress
Aber gerade für professionelle und geschäftliche WordPress-Seiten kommt man kaum darum herum, Fachleute zu Rate zu ziehen. Davon lebt eine ganze Branche von WordPress-Agenturen sehr gut, die lassen sich ihre Arbeit natürlich gut bezahlen.

Ist WordPress also doch die eierlegende Wollmilchsau fürs Internet?

Sieht ganz so aus – in den letzten Jahren wurden insbesondere in Richtung CMS gewaltige Fortschritte erzielt. Ich empfehle hier den sehr informativen Artikel von Christian Strang „WordPress als CMS“ auf wordpress.lernenhoch2.de , hier finden sie geballte Informationen zum Thema.

Und wenn sie sich da durchgelesen haben, gehen wir mal daran, WordPress ein bißchen besser kennenzulernen – aus Sicht einer alten Datenbankprogrammiererin. Aber das wird ein neuer Artikel.

Für wen ist dieser Blog gedacht?

Ist ernstgemeint: für alte Programmierer. Das ist jetzt nicht unbedingt für Tattergreise gedacht, sondern für technisch interessierte Leute, die schon ein paar Jahre Erfahrung in der IT auf dem Buckel haben. Dazu zähle ich auch ausdrücklich die alten Hobby-Programmierer, denn von denen gibt es viele sehr gute da draussen, die womöglich ihre erste Datenbank noch anno Dunnerkeil mit dBase geschrieben haben und die sich mit Excel, Word und Access schon unter DOS auskannten.

Also für Dinosaurier?  Ausdrücklich JA! Ich liebe Dinos, vermutlich weil ich selber mittlerweile einer bin 😉

Und mit diesen Dinosauriern möchte ich mich gerne über WordPress unterhalten, die erfolgreichste Blog-Software aller Zeiten. Ich selber nutze Wordpess seit einigen Jahren als Frontend für die Erstellung kleiner und mittlerer Webseiten, und bin eigentlich ein begeisterter Fan,  es ist so schön einfach zu bedienen, es ermöglicht auf einfachste Weise wunderbare Layouts und ist unendlich erweiterbar.

Warum „eigentlich“ ein Fan?

Weil ich nicht alles an WordPress gut finde.  Es gibt auch Sachen, die mich echt nerven, oder wo ich nicht verstehe warum man Dinge unnötig kompliziert macht. Ich möchte hier aber keinesfalls verbiesterte Kritik üben, mir geht es um eine eher lockere, ich würde fast sagen spielerische Herangehensweise, denn WordPress kann auch richtig Spaß machen.

Was ich voraussetze

Einige allgemeine Grundlagen der Programmierung (Sie sollten schon wissen wie man ein if..then..else und sowas konstruiert), solide SQL-Grundkenntnisse und ein allgemeines Verständnis des relationalen Datenbankmodells, dazu noch für den optischen Zuckerguß Erfahrung mit HTML und CSS, und ein bißchen PHP und MySQL kann auch nichts schaden. Und natürlich zumindest erste Erfahrungen mit WordPress, wenigstens ihre Urlaubsfotos sollen sie schonmal damit veröffentlich haben 😉

Was  ich nicht machen werde

Ich werde hier keine Sammlung von fix und fertigen Code Snippets zum Rauskopieren aufstellen, dafür fehlt mir einfach die Geduld. Einige beispielhafte Codeschnipsel hier und da müssen genügen, sie können ja selber tippen, und alte Programmierer lassen sich von verschachtelten Klammerungen und der allgemeinen Gänsefüßchenwut nicht abschrecken. Mir geht es darum, daß sie meine Codebeispiele nach vollziehen können, weil sie sie verstanden haben. Hier wird es also keinen  Copy&Paste-Laden geben, sondern eher eine lockere Plauderei über Konzepte mit eingestreuten Programmierbeispielen, die sie selber ausbauen und aufhübschen können. Sie werden sehen, wir werden jede Menge Spaß damit haben!

Ein wirklich nützliches Plugin: der Tablesorter

Ich kenn das bei den alten Programmierhasen, wenn die eine Tabelle sehen kriegen sie dieses Glitzern in den Augen und wollen sie unbedingt nach den verschiedensten Kriterien sortieren, nach Namen und IDs und Datum und was weiß ich noch alles… gemach, gemach. Nicht gleich mit PHP loslegen, das geht heutzutage auch bequemer. Wir holen uns dafür das Plugin Table Sorter an Bord, das beruht auf dem bekannten jQuery Tablesorter 2.0 von Christian Bach und ist sehr einfach in der Anwendung. Es kann zwar ohne Erweiterung kein deutsches Datumsformat, aber das soll uns erstmal nicht stören, in der wp_posts ist kein „German“ Datum drin.

Erste Voraussetzung: die Tabelle muß sauber mit thead und tbody-Tags strukturiert sein, deswegen meine Vorbemerkung aus dem letzten Beitrag. Wenn dann das Plugin installiert ist, genügt eine einfache Erweiterung im <table>-Tag, das schreibt sich so:

<table id='meineTabelle' class='tablesorter'>

Statt ‚meineTabelle‘ können sie einen beliebigen Tabellennamen angeben, er sollte halt innerhalb einer Seite eindeutig sein. Die Zuweisung der class = ‚tablesorter‘ sorgt dafür, daß sich das Plugin einschaltet. Wenn sie jetzt ihre Testseite mit der Tabellenausgabe neu laden, sollte es etwa so aussehen:

tablesorter

tablesorter

Und wenn sie auf die Pfeilchen in der Kopfzeile der Tabelle klicken, werden die Datensätze hübsch nach dieser Spalte sortiert – schick, nicht wahr? Der Tablesorter kann übrigens noch viel mehr, aber das sprengt hier komplett den Rahmen. Selber nachlesen auf der Plugin-Seite , oder auch direkt bei Christian Bach.

Das Sortieren zieht natürlich erst so richtig, wenn man es mit vielen unterschiedlichen Datensätzen zu tun hat, und wir waren ja bei der Abfrage einer Handvoll veröffentlichter Beiträge stehengeblieben. Lassen sie mal die Where-Klausel weg und schauen sie sich alle Einträge in der wp_posts mit dem Table Sorter an, das ist sehr aufschlußreich und erspart einem das SQL-Tippen im phpmyadmin. Konnte ich das Glitzern in den Augen der alten Tabellenhasen befriedigen? Das Potential des Tablesorter ist enorm, das müssen sie zugeben, der ist ungeheuer vielseitig einsetzbar und erspart einem im Zweifelsfall viele Zeilen PHP-Code.