icalparser@2b5ba438de | ||
tests | ||
gcal-import-admin.php | ||
gcal-import-worker.php | ||
gcal-import.php | ||
LICENSE | ||
Makefile | ||
README.md | ||
readme.txt |
kal3000-gcal-import
Ein Wordpress-Plugin, das auf das Grüne Wordpress-Theme Urwahl3000 aufsetzt und eine Integration beliebig vieler öffentlicher Google-Kalender ermöglicht.
Warnung
Das hier ist noch "work in progress", und es ist noch nicht benutzbar!
Motivation
Für eine solche Integration gibt es eine Reihe von Motivatoren:
- Manche (viele?) Seitenadmins scheuen dem Umgang mit einem Blog- oder CMS-System. Die Terminpflege auszulagern erleichtert den Admins den Umgang mit dem Kalendersystem und senkt die Hemmschwelle.
- (Öffentliche) Google-Kalender lassen sich auf einfache Weise auch per Smartphone administrieren. Dazu muss der Admin lediglich in GCal entsprechende Admin-Zugänge z.B. für den Ortssprecher oder den News-Redakteur vergeben. Ebenso lassen sich solche Kalender leicht von jedermann in den eigenen Kalender einbinden, um jederzeit die aktuelle Terminübersicht greifbar zu haben. Eine weiter führende Dokumentation findet sich hier.
- So schön Urwahl3000 ist - der auf wpCalendar basierende kal3000 Kalender unterstützt keine Serientermine. Mit diesem Plugin ist das kein Problem mehr, da es Serientermine im Google Kalender automatisch als Serie von Einzelterminen anlegt.
Eigenschaften
- Administration in Wordpress über die Admin-Oberfläche.
- Einbinden beliebig vieler Google-Kalender.
- Zuordnung dieser Google-Kalender zu bereits angelegten Terminkategorien, beispielsweise je OV.
- Geocoding von Veranstaltungsorten, wie sie aus Google Kalender übernommen werden. Derart angelegte Termine werden auf der Übersichtskarte richtig angezeigt.
Voraussetzungen / Installation
-
Um eine auf Urwahl3000 und Wordpress basierende KV- oder OV-Seite betreiben zu können, braucht man zunächst eine irgendwo gehostete aktuelle Wordpress-Umgebung. Dazu wird auf die Dokumentation von Urwahl3000 verwiesen.
-
Als nächstes holt man sich das Plugin unter https://www.gruene-freising.de/... (Attachment) und installiert es über die WP-Oberfläche wie gewohnt. (TODO: Klären, ob das Plugin evtl. in Urwahl300 eingebaut wird, ansonsten evtl. offizielles WP-Plugin).
-
in WP legt man Terminkategorien an, z.B. eine pro OV und eine für den KV, plus weitere nach Bedarf. Das funktioniert am besten mit einer entsprechenden Seitenhierarchie wie auf https://www.gruene-freising.de/... .
-
Im Admin-Teil des Plugins erscheinen die angelegten Terminkategorien. Jeder Kategorie weist man dann einen öffentlichen Google-Kalender in Form des "public ics"-Links zu, beispielsweise https://calendar.google.com/calendar/ical/gruene.freising%40gmail.com/public/basic.ics.
-
Im Admin-Teil kann man auch das Geocoding aktivieren. Das offizielle Google-API erfordert einen API-Key, der bei intensiver Nutzung nicht kostenlos ist. Alternativ dazu kann man den inoffiziellen Weg wählen, der ohne die API auskommt. Auf die Google-Policy wird hingewiesen.
-
Im Admin-Teil kann man das Zeitintervall einstellen, mit dem die Kalender synchronisiert werden. Standardeinstellung ist 60 Minuten.
-
Speichern und fertig.
-
Um die Termine in WP anzuzeigen, gibt es zwei Wege: Das Termine-Widget in der rechten Spalte zeigt immer alle Termine an. Pro OV kann man beispielsweise eine Unterseite mit dem Titel "OV Termine" anlegen, in der folgender Shortcode steht:
[wpcalendar kat=TERMINKATEGORIE]
. Auf dieser Seite werden dann nur die Termine des dazugehörigen OV angezeigt.
Mit Aktivieren des Plugins beginnt das Plugin sofort mit der Synchronisation.
Proxy-Konfiguration
Das Plugin benötigt den Zugriff nach "draußen", um ICAL-Feeds zu holen oder auf Google Maps zuzugreifen. In Wordpress werden Proxy-Einstellungen in /usr/share/wordpress/wp-config.php
bzw. auf Ubuntu / Debian in /etc/wordpress/config-SITE.php
festgelegt. Zur Dokumentation bitte hier entlang.
Support
Support gibt es aktuell nur per E-Mail an Harald Milz. (TODO: Obfuscate mail adsress)
Internationalization
Since this plugin is only relevant for people using the Urwahl3000 theme, and this includes only members of Bündnis 90 / Die Grünen, the plugin will only be available in German. Should a demand for other languages arise, feel free to contact me - and offer your support :-)