Nextcloud-Kalender per Homepage zur Verfügung stellen

  Herbert Hertramph   Lesezeit: 2 Minuten  🗪 18 Kommentare Auf Mastodon ansehen

Nextcloud-Kalender lassen sehr einfach auf der eigenen Homepage einbinden und geben so Besuchern eine Terminübersicht.

nextcloud-kalender per homepage zur verfügung stellen

Die Kalenderfunktion der Nextcloud bietet eine Vielzahl von Möglichkeiten: Vom einfachen Familienkalender bis hin zum Buchungszentrum lässt sich mit wenigen Handgriffen viel umsetzen. Besonders einfach lassen sich Nextcloud-Kalender auf der eigenen Homepage einblenden, so dass Besucher zu verschiedenen Themen aktuelle Terminübersichten erhalten können. Zusätzlich kann man das Abonnieren der Kalender anbieten, so dass die neuen Termine direkt in den Kalenderanwendungen der Interessenten eingeblendet werden.

Nextcloud-Vorbereitung

Zunächst legt man einen oder mehrere Kalender, die man teilen möchte, wie gewohnt in der Nextcloud an. Die Termine können mit Ortsangaben, ergänzenden Notizen, Alarmzeiten usw. versehen werden:

In der linken Seitenleiste lässt sich durch einen Klick neben den Kalendernamen ein Freigabemenü öffnen. Wir benötigen aus diesem Menü die Punkte "Abonnement-Link kopieren"  und "Einbettungscode kopieren".

Damit ist die Vorarbeit erledigt. Nun binden wir die Informationen auf unserer Homepage ein.

Statische Seite mit Markdown-Editor erzeugen

Einbettungslinks sind für die meisten Homepage-Layouts suboptimal. Wenn man z. B. die Monatsansicht des Kalenders einblenden möchte, so zerstört das oft das schmale Layout. Je nach verwendetem System könnte man nun eine Seite anlegen, die genügend Raum bietet. Oder man erstellt gleich eine HTML-Seite, auf die man verlinkt. Das kann man einfach mit einem Markdown-Editor (hier: Typora) erledigen. 

Dazu kopiert man in ein Code-Feld den iframe-Einbettungscode im HTML-Format ein (1). Den Abonnement-Link weist man einem erklärenden Text zu (2). Weitere Links können zusätzliche Nextcloud-Kalender einblenden.

In den Standard-Einstellungen enthält der iframe-Code ein zu kleines Anzeigefenster für den Kalender. Aber die Größe lässt sich leicht über die Parameter "width" und "height" anpassen.

Die Markdown-Editoren haben in den Regel den Export ins HTML-Format eingebaut. Also: Die Markdown-Seite in HTML speichern und z. B. via SFTP auf den eigenen Web-Speicher hochladen. Ein Link innerhalb der Homepage führt dann zum Kalenderbereich:

Die Besucher können auf die verschiedenen Ansichten umschalten - Woche, Monat, Jahr, Liste - oder einen bestimmten Zeitraum auswählen. Mit dem Link, der sich hinter "Kalender-Abo" verbirgt, kann man die Termine in die üblichen Kalenderanwendungen - etwa Thunderbird, Evolution oder Gnome-Kalender - einbinden. Damit erfährt man rechtzeitig von Terminänderungen oder von neuen Terminen. Die Zusatzinfos in den Bemerkungsfeldern werden ebenfalls angezeigt:

Wenn man ohnehin eine Nextcloud nutzt, erhält man so auf einfache Weise die Möglichkeit, einen oder mehrere Info-Kalender auf seiner Homepage einzubinden.

Tags

Nextcloud, Kalender

Niko
Geschrieben von Niko am 20. Juni 2025 um 16:54

Das ist nur eine reine Kalenderanzeige, man kann damit keine freien Termine buchen oder vereinbaren? Das wäre ein wichtiges Feature für jeden Friseur, Arzt oder für alle die mit Zeitfenstern arbeiten. Wird bei der Abo-Funktion ein Konto angelegt und sendet NC dann für jede einzelne Änderung eine Extra-Email, also so wie eine Art Newsletter, und das geht DSGVO-konform? Open Source und zum selbst-hosten habe ich sonst auf die schnelle diese beiden Projekte https://github.com/calcom/cal.com Homepage https://cal.com/de/ und https://ui.toast.com/tui-calendar gefunden.

Herbert Hertramph
Geschrieben von Herbert Hertramph am 20. Juni 2025 um 18:25

In diesem Artikel habe ich mich auf die Anzeige-Funktion konzentriert. "Abonnieren" bedeutet, dass man den generierten Link ein eine Kalenderanwendung aufnimmt, die mit derartigen Links umgehen kann - das ist z. B. der Thunderbird-Kalender. Die Kalenderansicht innerhalb des Programmes zeigt dann die neuen Ereignisse an - es werden also keine Links per Mail verschickt. Die Terminbuchungsfunktion erfordert etwas mehr Einarbeitung. Für kleinere Vorhaben - etwa Timeslots und Belegung von Dozentensprechstunden - kann sie auch auch gut funktionieren. Für Arztpraxen, Friseure usw. gibt es andere fix-und-fertig-kommerzielle Systeme, die dann auch Bestätigungen via SMS verschicken.

DxU
Geschrieben von DxU am 21. Juni 2025 um 22:11

ja nennt sich doctolib und ähnliche

tuxfanmatze
Geschrieben von tuxfanmatze am 21. Juni 2025 um 17:51

Für die Terminbuchung stellt Nextcloud eine weitere App zur Verfügung: Appointments (Termine). Damit kann man einen weiteren Weblink z.B. in seine Website einblenden oder versenden, wo dann eizelne vorausgewählete Termine gebucht werden können. Diese Ansicht läßt sich recht weitgehend konfigurieren. Auch viele Managed Nextclouds enthalten diese App. Hier eine ganz gute Anleitung: https://blog.admin-intelligence.de/appointments-die-nextcloud-app-fuer-terminvereinbarungen/

Herbert Hertramph
Geschrieben von Herbert Hertramph am 21. Juni 2025 um 23:46

Wenn ich mich nicht täusche, kann man seit einigen Versionen mit der integrierten Funktion "Terminplan" das meiste umsetzen, was die zusätzliche App Appointments kann. Dunkel habe ich in Erinnerunger, dass Appointments etwas mehr kann - aber mit Bordmitteln kommt man auch schon recht weit.

Roland
Geschrieben von Roland am 20. Juni 2025 um 17:07

Kleiner App-Tipp: Zur Einbindung in die eigene Homepage könnte man auch https://fullcalendar.io/ verwenden. Monats-, Wochen- oder Tageslistenansichten werden ebenso unterstützt. Es wird aktiv entwickelt und den Source Code gibt es hier https://github.com/fullcalendar/fullcalendar

Herbert Hertramph
Geschrieben von Herbert Hertramph am 20. Juni 2025 um 18:20

Danke für den Tipp! Kannte ich noch nicht - schaue ich mir an. Falls jemand keine Nextcloud hat, könnte das eine gute Alternative sein.

Datastack
Geschrieben von Datastack am 21. Juni 2025 um 11:08

Merci! – Gibt es auch eine Möglichkeit nur die Verfügbarkeit, also frei / besetzt zu publizieren?

Herbert Hertramph
Geschrieben von Herbert Hertramph am 21. Juni 2025 um 12:25

Es gibt zwar die Option - für jeden einzelnen Termin - nur "beschäftigt" anzuzeigen. Die ist aber hauptsächlich für die Nutzer innerhalb der gleichen Nextcloud-Instanz gedacht. Wenn man den Kalender abonniert, sind die Inhalte sichtbar. Allerdings scheint es so zu sein, dass beim bloßen Einblenden auf einer Webseite der Termin mit "beschäftigt" eingeblendet wird - habe ich mir aber noch nicht näher angeschaut.

tuxfanmatze
Geschrieben von tuxfanmatze am 21. Juni 2025 um 17:43

In der Nextcloud Dokumentation wird noch beschieben wie die Standard-Ansicht des Kalenders geändert werden kann und wie mehere Kalender zusammen eingeblendet werden können: https://docs.nextcloud.com/server/latest/user_manual/de/groupware/calendar.html#publishing-a-calendar

Herbert Hertramph
Geschrieben von Herbert Hertramph am 21. Juni 2025 um 23:47

Guter Hinweis! Das mit mehreren Kalendern habe ich bisher noch nicht ausprobiert, aber wäre ja eine ideale Sache z. B. für unterschiedliche Jahrgänge an Schulen (Ausflüge, Klausurtermine). Danke Dir für den Hinweis!

Herbert Hertramph
Geschrieben von Herbert Hertramph am 21. Juni 2025 um 23:48

Das ist auch ein guter Tipp! Die Listenansicht wäre z. B. in vielen Fällen ein besserer Startpunkt, da die recht übersichtlich ist. Danke!

tuxfanmatze
Geschrieben von tuxfanmatze am 21. Juni 2025 um 21:22

Hallo @Herbert Hertramph, vielen Dank für die ausführlichen Infos dazu sowie die Idee mit einer Markdownseite und dann nach HTML exportieren, sehr gute Idee!

DxU
Geschrieben von DxU am 21. Juni 2025 um 22:15

sehr schöner Artikel. Hat mich gereizt das mal aus zu probieren. War gar nicht so scher https://dxupara.de/kalendertest/ Falls noch wer, wie ich in dem Bsp. Hugo verwendet. Hier muss um iframes nutzen zu können, folgernder Code in der config.toml ergänzt werden:

[markup] [markup.goldmark] [markup.goldmark.renderer] unsafe = true

Herbert Hertramph
Geschrieben von Herbert Hertramph am 21. Juni 2025 um 23:40

Ist gut geworden :-) Danke auch für den Hugo-Hinweis!

DxU
Geschrieben von DxU am 22. Juni 2025 um 15:23

leider im Moment kaputt, weil Hetzner, mich mit Support nach missglücktem Update hängen lässt.

bzgl Hugo. Beachte dass nach jeder schließenden Klammer ein Zeilenumbruch kommt. Der Kommentar hat leider die Formatierung gefressen.

DxU
Geschrieben von DxU am 23. Juni 2025 um 14:21

hier nochmal sauber formatiert


 [markup]
       [markup.goldmark]
             [markup.goldmark.renderer]
                   unsafe = true
DxU
Geschrieben von DxU am 23. Juni 2025 um 14:22

hier nochmal sauber formatiert


 [markup]
       [markup.goldmark]
             [markup.goldmark.renderer]
                   unsafe = true