DB Barrierefrei-Check: WordPress-Plugin für barrierefreie Bahnhofssuche

Problemstellung & Kontext

  • Anforderung: Menschen mit Mobilitätseinschränkung benötigen vor einer Reise verlässliche, schnell zugängliche Information darüber, ob ein Bahnhof barrierefrei ist – Daten, die die Deutsche Bahn zwar über eine offene API bereitstellt, aber nicht in einer für Website-Betreiber direkt einbindbaren Form.
  • Ausgangslage: Eine bereits bestehende eigenständige Web-App (PHP-Backend mit Vue.js-Frontend, siehe Portfolio) sollte in ein verteilbares, framework-unabhängiges WordPress-Plugin überführt werden, das jeder WordPress-Betreiber mit eigenen API-Zugangsdaten nutzen kann.
  • Zielsetzung: Ein WordPress-Plugin, das per Shortcode einbindbar ist, im Backend frei konfigurierbar ist, (welche Informationen angezeigt werden) und dabei selbst höchste Barrierefreiheits-Standards (WCAG 2.1 AA) erfüllt.

Meine Leistungen & Lösungsansätze

  • Konzeption & Architektur: Planung der vollständigen Plugin-Struktur auf Basis der offiziellen StaDA-OpenAPI-Spezifikation der Deutschen Bahn (Activation/Deactivation/Uninstall-hooks, zentrale Field-Registry zur Erweiterbarkeit).
  • Backend-Entwicklung: Eigenes Admin-Menü zur Verwaltung der API-Zugangsdaten (AES-256-verschlüsselt in der Datenbank gespeichert) sowie einer dreistufigen Kategorien-Auswahl der im Frontend anzuzeigenden Informationen.
  • Frontend ohne Framework: Umsetzung der Suchoberfläche in reinem Vanilla JavaScript ohne Vue/React-Abhängigkeit, inklusive AJAX-Anbindung, Wildcard-Suche und einer Nachlade-Funktion für große Trefferzahlen.
  • Barrierefreiheit als Kernanforderung: Konsequente Umsetzung von WCAG 2.1 AA – u. a. Icon-, Farb- und Textredundanz für Nutzer mit Rot-Grün-Sehschwäche, vollständige Tastaturbedienbarkeit und semantisches HTML mit Live-Regionen für Screenreader.
  • Sicherheit: Verschlüsselung sensibler API-Zugangsdaten, konsequente Absicherung der Darstellung externer API-Daten gegen XSS.
  • Herausforderung: Identifikation und Lösung eines macOS-spezifischen Absturzes der lokalen Entwicklungsumgebung (Konflikt zwischen PHP-FPM und Apples Sicherheitsmechanismen bei verschlüsselten Netzwerkanfragen), der zunächst wie ein Fehler im eigenen Code wirkte.
  • Eingesetzte Technologien: WordPress-Plugin-API, PHP 8, Vanilla JavaScript, REST/OpenAPI (Deutsche Bahn StaDa API v2), WCAG 2.1, AES-256-Verschlüsselung, Git/GitHub.

Ergebnis

Ein eigenständiges, verteilbares WordPress-Plugin, das jedem Website-Betreiber ermöglicht, eine barrierefreie Bahnhofssuche mit eigenen API-Zugangsdaten einzubinden – frei konfigurierbar im Funktionsumfang und mit einer Bedienoberfläche, die selbst höchste Barrierefreiheits-Standards erfüllt.

Projekt-URL: http://wpdemo.mikeberg.de/sample-page/

GitHub: https://github.com/MickSmurf/db-barrierefrei-checker-plugin

Plugin Download: https://mikeberg.de/wp-content/uploads/2026/09/db-barrierefrei-check.zip

DB-Barrierefrei Plugin Backend
DB-Barrierefrei Plugin Backend
DB-Barrierefrei Frontend Suchergebnisse
Ergebnisse einer Bahnhofsuche im Frontend
DB-Barrierefrei Plugin Frontend "Erweiterte Informationen"
Erweterte Informationen von Bahnhof im Frontend