Mitgliederlisten

Aktuelle Mitgliederlisten

Über diesen Beitrag lassen sich die verschiedenen Mitliederlisten anzeigen:

  1. Tabelle 1: Registrierte Nutzer sortiert nach Nachname
  2. Tabelle 2: Registrierte Nutzer sortiert nach Nachname mit Rollen
  3. Tabelle 3: Registrierte Nutzer mit Zugangsdaten sortiert nach Anmeldedatum
  4. Tabelle 4: Registrierte Nutzer sortiert nach Email

Kurze Historie

Diese Seite ist auch dazu da die Implementation dieser Listen kurz zu beschreiben. Erste Gehversuche machte ich bereits im Sommer 2014 über ein Plugin zur Datenbankabfrage (ABASE). Das Plugin produzierte aber unleserlichen SQL-Code und Fatal Error, wenn ich es leserlich darstellen wollte. Also habe ich versucht die Datenbankabfrage direkt mit mySQL-Befehlen zu realisieren. Aber auch das erfolgte Stufenweise.

Erzeugen einer Template Datei

Der erste Versuch war das erstellen einer Template-Datei, in der ich die verschiedenen Mitgliederlisten anzeigen wollte. Die Template Datei erlaubt nämlich das speichern und ausführen von php-Code direkt in der Template-Datei. Das hat auch erst mal funktioniert und ich konnte mit dieser Datei alle meine sql-Abfragen erstellen und erfolgreich testen. Im Dashboard unter Seiten findet man diese Template Seite hier. Wie man sieht ist diese Seite „leer“. Warum? Nun der php-Code steht in der zugehörigen Datei, die im Laufwerk im Verzeichnis unseres Themes „Attitude“, genauer im „attitude_child“ Ordner unter /wp-content/themes/attitude-child/page-mitglieder.php liegt. Schaut man sich die Datei mit einem Editor an, sieht man all den php-Code sowohl für das „Template: Mitglieder“ als auch für die Listen. Bringt man diese Datei zur Anzeige, sieht man alle bisherigen vier Listen nacheinander aufgelistet. Das ist zwar ganz schön, aber man will die Listen ja einzeln nacheinander angezeigt bekommen. Die Lösung mit dem Template brachte mich da aber nicht weiter.

Plugin – Insert PHP

php-Code lässt sich innerhalb von Seiten oder Beiträgen in WordPress nicht ausführen. Aber das ist genau das, was ich machen müsste um die Datenbankabfragen über eine Seite oder ein Posting zu machen. Es existieren aber wiederum Plugins, über die das doch wieder ermöglicht wird: „Insert PHP“ ist ein solches Plugin, das ich hierzu installiert habe. Wie erwartet konnte ich damit tatsächlich den Code ausführen und die Listen anzeigen. Aber alles hat zwei Seiten. Wie ich nachlesen konnte, führt das bei längeren Code-Stücken (was hier vorliegt) zu längeren Ausführungszeiten. Aber es gibt noch eine bessere Lösung.

Pseudo Plugin

php-Code lässt sich in WordPress auch über Plugins ausführen. Dies ist scheinbar auch die normale Methode, weil der php-Code dort in den Dateien gespeichert ist. Also habe ich hierzu ein Plugin erstellt. So tief sind meine Kenntnisse aber noch nicht, um dies wirklich tun zu können. Sprechen wir vorerst also nur von einem Pseudo Plugin. Die große Template-Datei habe ich hierzu aufgeteilt in vier einzelne Dateien für die Tabellen 1 bis 4. Im Plugin Ordner habe ich dann einen Ordner „member_lists“ angelegt mit der Pseudo-Template Datei „member_lists.php“ und den vier einzelnen php-Dateien für die Tabellen. Dieses Plugin erscheint nun auch im Admin Dashboard unter Plugins (und verlinkt sogar hierher zu dieser Seite). Um die einzelnen Mitgliederlisten nun anzuzeigen, brauche ich nun nur noch eine Zeile php-Code, den ich über „Insert PHP“ aufrufe. Die Seiten mit dem entsprechenden Code sind zu Beginn ja schon aufgelistet, womit sich der Kreis schließt (vorläufig zumindest).