wordpress als opendata-frontend - nlt · wordpress als opendata-frontend hartmut albers, lk...

35
Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Upload: others

Post on 06-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Wordpress alsOpenData-Frontend

Hartmut Albers, LK Diepholz- IuK-Forum, August 2016 -

Page 2: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Zielsetzung

• Vorhandene strukturierte Daten einfach im WWW anzeigen!

• KEIN Ziel: Fachanwendungen durch Web-App ablösen/ersetzen

„ Data pimped by Wordpress “

Page 3: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Klarstellung, 2 unterschiedliche Dinge:

Wordpress als OpenData-Frontend

• Daten visualisieren/präsentieren

• Herkunft: URL oder lokale Datei• Anders CMS

• OpenData-Portal

• API einer Fachanwendung

• usw… / d.h. Datenquelle mit strukturierten Daten

Wordpress als CKAN-Frontend

• Daten bereitstellen/ausliefern

• OpenData-Datenbank CKAN im Hintergrund ansprechen(API)

• Daten aus CKAN mit Zusatzcontent und/oder Blog-Funktionalitäten versehen

Page 4: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Vortrag in 2 Teilen

© Foto: Wikipedia

( Teil II )Wordpress als

OpenData-Frontend

( Teil I )OpenData allgemein

beim LK Diepholz

Page 5: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Teil I

Page 6: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

OpenData

• Gesellschaftspolitisches Thema

• Muss ohne nennenswerten personellen Zusatzaufwand mgl. sein !!!

• Vorhandene Daten & Ressourcen zugänglich machen

• Datenbank mit CKAN-Technologie (OpenSource) http://daten.diepholz.de

• Nach Möglichkeit noch Mehrwert für Homepage schaffen• Embed-Code Visualisierung Daten-Clustering auf Maps (noch in Arbeit)

• Embed-Code Visualisierung Haushaltsdaten (noch in Arbeit)

• Ausgangssituation: viele Daten als WMS vorhanden

Page 7: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Anlass für Aktionismus in 2016-Q2

• Ablösung altes CMS unbedingt erforderlich

Thema „Aufbereitung Daten“ = seit 2002 PHP-Anwendung

CMS ist modernen Anforderungen nicht mehr gewachsen

• nicht responsive, alte Codebase, fehlende Interaktivität, keine Volltextsuche, kein Cache, keine Modals, Maintenance

propritäre SQL-Insert-Commands beim bisherigen CMS

• Ablösung solcher SQL-Commands

• Output vorhandener Daten auf Basis neutraler Formate als CSV, XML, JSON

• Datenbereitstellung dann als OpenData

Page 8: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

In 2016-Q2 vom CMS-Wechsel betroffen

• Seniorenangebote im LK Diepholzhttp://seniorenangebote.diepholz.de

• Kinderbetreuungsangebote LK Diepholzhttp://kinderbetreuung.diepholz.de

• Familienhandbuch(Familienangebote im LK Diepholz)http://familienhandbuch.diepholz.de

bis Juli 2016:Die Daten waren inhaltlich aus Kundensicht auf

den bisherigen Webseiten ebenfalls gut aufbereitet und nach vielen Merkmalen/Kriterien abrufbar

(Handlungsdruck halt aus technischen Gründen gegeben)

Page 9: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Die Folgen daraus

• Anderes Web-Tool für den Zweck „Aufbereitung Daten“

• Abwägungsprozess, ob individueller Programmierauftrag an CMS-Hersteller oder andere Lösung

• Entscheidung für Wordpress als Tool Extrem flexibel

Nutzung für Projektwebseiten

Nutzung für Zweck „Aufbereitung Daten“ => WP als Frontend für XML-Daten

Wordpress bei anderen Projekten bereits im Einsatz

• Primäres CMS ist von Entscheidung nicht tangiert

Page 10: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Positionierung von Wordpress & OpenData

• Was Wordpress angeht, ist der LK Diepholz Konsument seiner eigenen offener Daten ;-) seniorenangebote.xml + kinderbetreuung.xml + familienhandbuch.xml

• Bereitstellung der Daten im OpenData-Portal

• Wordpress ist nur das Frontend, um diese Daten anzuzeigen

• Vorhaben passt als kleiner Baustein in die OpenData-Strategie/OpenData-Aktivitäten

Page 11: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Klassifizierung von Daten, 3 Bereiche

UnstrukturierteDaten

(Webseiten)

Strukturierte Daten

(CSV, XML, JSON)

Strukturierte Daten

Geodaten (WMS & Karten)

ANMERKUNG: der Vollständigkeit halber, WWW-Aplicationsserver mit Fachanwendungen (z.B. Baulastenauskunft, Schulkonsole, Reverse-Proxy, GDI-System, usw.) sind nicht Gegenstand o.a. Gruppierung/Kategorisierung

D A T E N

(1.) (2.) (3.)

relevant aus Sicht OpenData:

Page 12: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

(zu 1.) Unstrukturierte Daten (Webseiten)

Webseite(Homepage)

INHALTE AUF:www.diepholz.de Volltextsuche schließt ALLRIS-Datenbestand vollständig ein

ALLRIS-Server(Politik, Sitzungen,

Dokumente, Protokolle usw.)

Webseiten für Projekte

INHALTE AUF:VereinsportalGeowebOpenData-PortalSeniorenangeboteKinderbetreuungFamilienhandbuchNatura2000 # Schutzgebiete

Sprungbrett # Jugendberufshilfe

Horizont # Schülerfirmen

Webseitenvon Partnern

INHALTE AUF:Verein Schülerhilfen e.V.Dümmerweserland e.V.LV Weser-Hunte e.V.VolkshochschuleMusikschule

Page 13: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

(zu 2.) Strukturierte Daten (CSV, XML, JSON)

• Strukturierte Datenformate CSV, XML, JSON

• OpenData-Portal http://daten.diepholz.de

• Datenbank auf Basis CKAN-Technologie

• 2 Arten von Daten/Ressourcen im Verzeichnis:• URL‘s registrieren d.h. Ziel-URL zeigt auf entsprechende Datenquelle

• Upload von Dateien d.h. Ziel-URL verweist auf CKAN-Server als Datenquelle• Nur sinnvoll, wenn keine andere Datenquelle als URL vorhanden/ansprechbar

• Manueller Dateiupload nur in (wenigen) Ausnahmefällen!!!

• Z.Zt. für Schulen + Seniorenangebote + Kinderbetreuungsangebote + Familienhandbuch

XML-Dateienseniorenangebote.xmlkinderbetreuung.xmlfamilienhandbuch.xml

Page 14: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

(zu 3.) Strukturierte Daten (speziell Geodaten)(A

) Q

ue

llen

r In

fos

• Metadaten-verzeichnisse

• Projektwebseite # geoweb.diepholz.de

• Viewer inside# Infos in Sidebars

• OpenData-Portal

(B)

Qu

elle

r D

ate

n

• AuslieferungDaten durchGDI-Server# Reverse Proxy

• Bereitstellung in Form von WMS-Diensten

(C)

Be

nu

tzu

ng

Dat

en

du

rch

• GIS-Viewer LKDH

• Navigator LKDH

• GIS-Programme

• Smartphone-App

• Arcgis-Portal

• Wordpress

• etc. / weitere…

Page 15: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

OpenData-Portal

Rein organisatorische Fragestellung:• Was sind Gruppen• Was sind Datensätze• Was sind Ressourcen

http://daten.diepholz.de

Page 16: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Kurze Zusammenfassung

(zu 1.) Unstrukturierte Daten• Im OpenData-Portal Verweise auf Webseiten (als Ressource) grundsätzlich NEIN

• In speziellen Fällen jedoch Verweis auf eine Webseite (HTML)• Und zwar dann, wenn es bei der Webseite tatsächlich um „echte“ Daten geht

• Das OpenData-Portal ist schließlich kein Bookmark-Verzeichnis für Webseiten

(zu 2.) Strukturierte Daten (CSV, XML, JSON)• Im OpenData-Portal grundsätzlich JA

(zu 3.) Strukturierte Daten (Geodaten, WMS + Karten)• Im OpenData-Portal grundsätzlich JA

Page 17: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Ausblick OpenData

• Conversion-Service im Herbst 2016• Daten (auch Flächeninfos) aus WMS tabellarisch ausliefern (CSV, JSON, XML)

• Evtl. GDI-Migration „Kinder-, Familien-, Seniorenangebote“• Dann Auslieferung der Daten als WMS-Dienst (über GDI) möglich

• ABER => XML-Import bei Wordpress weiterhin erforderlich• GDI-Migration somit erst möglich, wenn Conversion-Dienst online

• Embed-Code f. Homepage f. optische Präsentation (Clustering auf Maps)• Problem: CKAN vollzieht Clustering („Bubbles“) auf Maps automatisch

• als Marker jedoch 3 feste Ebenen gewünscht: LK => Kommunen => Gemeinden

Page 18: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Teil II

…..nun aber zum eigentlichen Inhalt ;-)

Page 19: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Wordpress

WP bekannt ?

• Blog & CMS-Software, Open Source

• Geringe Kosten für Themes, Plugins und Betrieb

• Nutzer:• „Normale“ User (einfach nur Webseiten bauen)• Softwareentwickler (Wordpress als Framework nutzen)

• große Auswahl Themes + riesiges Plugins-Repository

Page 20: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Wordpress

WP bekannt ?

• Eigener Server vs. Professioneller WP-Provider/Hoster?• Entscheidung hängt vom KnowHow & Zeit ab

• Wenn Zweifel, dann lieber professionellen WP-Hoster vorziehen!

• Eigener Server: • Sicherheit + Sicherheit + Sicherheit

• z.B. daily unattended updates für Linux-Pakete & WP-Core & WP-Plugins & WP-Themes | Apache-MPM | Hardening | restriktive iptables | fail2ban | u.v.a.m.……

Page 21: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Wordpress

Lernkurve

0

2

4

6

8

10

12

0 2 4 6 8 10 12 14

Aufwand / Zeit

Begeisterungskurve

0

2

4

6

8

10

12

14

0 2 4 6 8 10 12 14

Nutzungsdauer

Page 22: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

WP-CLI

Eigener Server = Scripting mit WP-CLI mgl… (komplettes Setup)

Page 23: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

WP-CLI

….und WP-Updates + WP-Backups dabei ebenfalls automatisieren

Page 24: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Anwendungsbeispiele Wordpress + OpenData

1. WMS-Dienst benutzen• Projektwebseite Natura 2000, http://natura2000.diepholz.de

• Karte mit Flächeninfos (Naturschutzflächen) auf Google-Karte

• Veredelung der Daten durch WP-Content und redaktionelle Inhalte

• ZIEL: Wordpress als Projektwebseite (Bürgerinformation)

2. XML-Daten anzeigen• Seniorenangebote, http://seniorenangebote.diephozl.de

• Kinderbetreuungsangebote, http://kinderbetreuung.diepholz.de

• Familienhandbuch, http://familienhandbuch.diephozl.de

• ZIEL: Daten nach unterschiedlichsten Kriterien visualisieren/präsentieren

Page 25: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

WMS-Dienst benutzen

• WP-Plugin „Maps Marker Pro“

• Flächen auf Karte zeigen

• Marker setzen + Content zeigen

• Ergebnis:

Page 26: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Was heißt eigentlich „Daten anzeigen“?

• Funktionalität der Javascript library „Table plug-in for JQuery“:

http://www.datatables.net

Page 27: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Was heißt eigentlich „Daten anzeigen“?

• Wünsche/Anforderungen an Einsatz von Datentabellen• Responsive Darstellung der Tabellen (RWD)

• Beliebigen Teilmengen eingrenzen (einfach + flexibel + keine SQL-Statements)

• Beliebige Spalten / individuelle Spaltenüberschriften

• Paginierung über mehrere Seiten

• Sortierbarkeit durch Anwender

• Live-Filter, angezeigte Daten und Infos „on the fly“ ohne Page-Reload eingrenzen

• Verlinkung = Flexibilität welche Felder/Spalten in Datentabelle als Link erscheinen

• Anzeige „Beschreibung / Details“ als Modal (Text bei Anklicken des Links)

• freie Javascript-Library www.datatables.net deckt einige Wünsche bereits ab

Page 28: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Ergebnis

Hier die Datentabelle

Hier das Modal

Hier die Gliederung

Page 29: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Ziel erreicht durch passende WP-Komponenten

Theme freie Auswahl

PluginMaps Marker Pro

PluginWP All Import Pro

Plugin JsDataTable

Plugin Easy Fancybox

Plugin Show Content Only

Mit diesen 4 Wordpress-Plugins wird die gewünschte Funktionalität „Daten anzeigen“ realisiert

Flächen aus WMS-Dienst auf anzeigen

Page 30: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

a) Plugin WP All Import

• Zweck: Daten aus fremder Quelle (z.B. URL) als WP-Posts einlesen

• Tolles Plugin mit den richtigen Features, z.B.• Einfaches Drag & Drop, um Daten aus XML-Datei dem WP-Post zuzuordnen

• Mehrere Kategorien + mehrere Schlagwörter + Custom Post Fields möglich

• Neu, Ändern, Löschen konfigurierbar (Vorlage für später Durchläufe)

• Viele inhaltliche Transformationen/Manipulationen möglich

• Cronjob möglich

• Plugin als Testversion (WP All Import) im Wordpress-Repository • Hinweis: mit Testversion ist nur 1 Datensatz (!) importierbar

• Kostenpflichtige Vollversion (WP All Import Pro) ist jeden Cent wert

Page 31: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

b) Plugin JsDataTable

• Javascript-Bibliothek www.datatables.net in Wordpress integrieren

• WP-Posts tabellarisch als Datentabelle auflisten• WP-Kategorien „cat“ und WP-Schlagwörter „tag“ als Suchkriterium

• Daten aus WP-Posts in Spalten anzeigen, auch eigene Zusatzfelder

• Einfache Benutzung des Plugins• Shortcode in WP-Seite: [jsdatatable cat=xxxxx] / [jsdatatable tag=xxxxx]

• Details frei konfigurierbar (Beispiele auf Projektseite)

• Zusammenspiel mit Easy Fancybox und Show Content Only ist fest integriert

• Plugin kostenlos / z.Zt. noch nicht im Wordpress-Repository• Download über Projektseite http://www.web-sky.de/plugin-jsdatatable

JsDataTable

Page 32: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

c) Plugin Easy Fancybox

• Grund für Installation: Modal öffnen, wenn Link in Tabelle angeklickt wird

• Nach Plugin-Installation folgende Plugin-Einstellung tätigen:• Media Enable FancyBox for Images deaktivieren (Haken rausnehmen)

• Media Enable FancyBox for iFrames aktivieren (Haken setzen)

• Hinweis• Auch ohne Plugin Easy Fancybox würde Plugin JsDataTable funktionieren

• Jedoch werden Links in der Datentabelle dann nicht als Modal geöffnet!

• Das wäre aus Kundensicht unschön + unpraktisch (weil Wechsel auf neue Seite)

• Schönheitstipp: bei iFrame-Einstellung „Rand = 30“ setzen (Standard ist 0)

• Plugin kostenlos im Wordpress-Repository

Page 33: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

d) Plugin Show Content Only

• Grund für Installation: Inhalt eines WP-Post „nackt“ darstellen• D.h. kein Header, keine Menüs, keine Sidebars und kein Footer drumherum

• Also nur den reinen Text (Inhalt des WP Post) zeigen

• Hinweis• Auch ohne Plugin Show Content Only würde Plugin JsDataTable funktionieren

• Das wäre aus Kundensicht jedoch unschön + unpraktisch (weil innerhalb des Modal eine ganze Webseite mit allem „Drumherum“ erscheinen würde)

• Plugin kostenlos im Wordpress-Repository

Page 34: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

2 kleine Bugs

• Kombination „Paginierung in Datentabelle + Anzeige Text in Modal“ funktioniert nicht• Spürbar, wenn auf „Seite 2“ geblättert wird und dort Link angeklickt wird

(hat technische Gründe / Javascript aus 2 Libraries)

• Daher OptIn: Paginierung ist in Plugin JsDataTable per default ausgeschaltet

• Tipp• wenn Paginierung in Datentabelle gewünscht, so sollten keine Links in Tabelle gezeigt werden

• Beschreibung siehe Projektseite http://www.web-sky.de/plugin-jsdatatable

• Einige wenige Smartphones zeigen keine Scrollbar, wenn der eingeblendete Modaltext sehr lang ist• Dennoch ist Plugin Easy Fancybox sehr beliebt (> 200.000 aktive Installationen)

Page 35: Wordpress als OpenData-Frontend - NLT · Wordpress als OpenData-Frontend Hartmut Albers, LK Diepholz - IuK-Forum, August 2016 -

Jetzt Live-Präsentation

BEIPSPIEL:Import beliebiger Daten (aus externer Quelle) in die Demoumgebung undAusgabe/Präsentation dieser Daten