Skip to content
TYPO3 Extension

Opening Hours for TYPO3

Opening hours management for TYPO3: regular hours, holidays, special opening hours. Displays current status (open/closed). For libraries, museums, public institutions.

Book a free initial call

Besucher wollen wissen, ob eine Einrichtung gerade geöffnet hat, nicht die regulären Zeiten nachschlagen

Die häufigste Frage, die Besucher auf der Website einer Bibliothek, eines Museums oder einer Behörde haben, ist simpel: Haben Sie gerade offen? Trotzdem zeigen die meisten TYPO3-Websites eine statische Tabelle mit den regulären Öffnungszeiten, die an Feiertagen, Brückentagen und Sonderschliessungen falsch ist. slub_web_openhours löst genau dieses Problem. Die Extension verwaltet reguläre Öffnungszeiten, Feiertage und Sonderöffnungszeiten in einer einzigen Datenstruktur und zeigt im Frontend den aktuellen Status in Echtzeit an: Geöffnet (grün) oder Geschlossen (rot), inklusive der nächsten Öffnungszeit. Entwickelt wurde die Extension von der SLUB Dresden (Sächsische Landesbibliothek, Staats- und Universitätsbibliothek), die das Problem aus der Praxis kennt.

Typical use cases involve Bibliotheken, Museen und kommunale Einrichtungen

Das primäre Szenario sind Hochschulbibliotheken mit mehreren Standorten. Die SLUB Dresden betreibt vier Standorte mit unterschiedlichen Öffnungszeiten. Der Hauptstandort hat andere Zeiten als die Zweigbibliothek, und während der Semesterferien gelten verkürzte Öffnungszeiten. slub_web_openhours verwaltet jeden Standort als eigenen Datensatz mit eigenen Zeiten. Auf der Website sieht ein Student sofort, welcher Standort gerade geöffnet ist und bis wann.

Ein zweites Szenario sind Museen und Galerien. Ein Kunstmuseum hat reguläre Öffnungszeiten (Di-So 10-18 Uhr, Mo geschlossen), aber verlängerte Öffnungszeiten während einer Sonderausstellung (täglich bis 21 Uhr) und Schliessungen an Feiertagen. Die Extension erlaubt, diese Ausnahmen für definierte Zeiträume zu hinterlegen, ohne die regulären Zeiten zu ändern. Nach Ablauf des Sonderzeitraums gelten automatisch wieder die Standardzeiten.

Drittes Szenario: Kommunale Einrichtungen wie Bürgerbüros, Schwimmbäder und Jugendzentren. Eine Stadt mit 20 öffentlichen Einrichtungen pflegt die Öffnungszeiten zentral im TYPO3-Backend. Auf jeder Einrichtungsseite zeigt ein Widget den aktuellen Status. Im Sommer gelten für das Freibad andere Zeiten als im Winter, und an Brückentagen ist das Bürgerbüro geschlossen. All das wird über die Extension abgebildet.

Technical architecture stores Regeln und Ausnahmen in einer kalendarischen Datenstruktur

Die Extension definiert drei Datenebenen: reguläre Zeiten (Montag bis Sonntag, Stunde:Minute bis Stunde:Minute), periodische Ausnahmen (Feiertage, die jährlich wiederkehren) und einmalige Ausnahmen (Sonderschliessung am 15. März, verlängerte Öffnung am 24. Dezember). Reguläre Zeiten bilden die Basis, Ausnahmen überschreiben sie. Die Logik ist einfach: Gibt es für das aktuelle Datum eine Ausnahme? Wenn ja, gelten die Ausnahme-Zeiten. Wenn nein, gelten die regulären Zeiten für den aktuellen Wochentag.

Das Frontend-Plugin rendert den Status über Fluid-Templates. Der aktuelle Zustand (offen/geschlossen) wird serverseitig berechnet und als CSS-Klasse ausgegeben, sodass die Farbgebung per Tailwind oder Custom CSS steuerbar ist. Optional zeigt das Widget die nächste Öffnungszeit an: “Aktuell geschlossen. Nächste Öffnung: Montag, 08:00 Uhr.”

Für die Schema.org-Integration kann die Extension OpeningHoursSpecification als JSON-LD ausgeben, was Google in den Knowledge-Panel-Einträgen der Organisation anzeigt. Das ist besonders für Einrichtungen relevant, die in Google Maps erscheinen und dort korrekte Öffnungszeiten zeigen wollen.

Common problems involve Zeitzonen, fehlende Feiertage und Caching

Das häufigste Problem ist das Caching. Wenn TYPO3 die Seite cached und der Cache erst nach zwei Stunden abläuft, zeigt das Widget bis zu zwei Stunden lang den falschen Status. Die Lösung: Das Öffnungszeiten-Widget per USER_INT als uncached Plugin einbinden. Das kostet minimal Performance (eine Datenbankabfrage pro Request), garantiert aber korrekten Status.

Zweites Problem: Fehlende Feiertage. Die Extension liefert keine vorkonfigurierte Feiertagsliste. Jede Einrichtung muss ihre Feiertage manuell eintragen oder über einen Import befüllen. Für bundeslandspezifische Feiertage (Fronleichnam gilt in Bayern, nicht in Berlin) ist manuelle Pflege oder ein Skript nötig, das Feiertage aus einer API (z.B. feiertage-api.de) importiert.

Drittes Thema: Zeitzonen bei internationalen Einrichtungen. Die Extension arbeitet mit der Server-Zeitzone. Wenn der TYPO3-Server in UTC läuft, aber die Einrichtung in MEZ, stimmen die angezeigten Zeiten nicht. Die Lösung: Die PHP-Zeitzone in der TYPO3-Konfiguration auf die Zeitzone der Einrichtung setzen, oder bei Einrichtungen in mehreren Zeitzonen die Berechnung per UTC+Offset im Fluid-Template anpassen.

Die Extension läuft unter TYPO3 v11 und v12, v13-Support ist vom SLUB-Team abhängig

slub_web_openhours wird von der SLUB Dresden als Open-Source-Projekt gepflegt. Updates folgen dem internen Release-Zyklus der Bibliothek. TYPO3 v12 wird unterstützt. Für v13 hängt die Kompatibilität davon ab, ob das SLUB-Entwicklungsteam die Extension aktualisiert. Da die Extension technisch schlank ist (keine komplexen API-Abhängigkeiten), ist die Migration auf v13 mit geringem Aufwand möglich. Gosign empfiehlt bei Öffnungszeiten-Projekten, die Extension parallel zur Schema.org-Ausgabe auf der Google-Seite zu validieren, damit die Öffnungszeiten in Google Maps und im Knowledge Panel korrekt erscheinen.

Free initial call: 30 minutes with a TYPO3 specialist

We analyse your project, estimate effort and timeframe, no-obligation, no preparation needed.

Discuss project, 30 min, free

25 years of TYPO3 experience · 800+ extensions analysed · AI-accelerated development

AI-accelerated development: 65% faster

TYPO3 Update & GDPR Audit

We upgrade your TYPO3 installation cost-effectively to the current LTS version - including all extensions, even outdated and unmaintained ones.

All extensions migrated

Including outdated, unmaintained or custom developments.

Fixed-price offer

Transparent costs, no hidden rework.

AI-accelerated

30-50% cheaper than market average thanks to AI-assisted code analysis.

Zero data loss

Complete data migration with rollback safety.

GDPR Audit: We audit your TYPO3 installation for GDPR compliance - cookie consent, tracking, extensions, forms and hosting - and implement all measures cost-effectively.

Gosign is a Hamburg-based digital agency with 25 years of experience in TYPO3 development. We have analysed over 800 TYPO3 extensions and today develop with AI assistance up to 70% faster than with classic methods. Our clients are mid-sized companies, universities and public institutions across Europe.

Last updated: April 2026

Book a free initial call

30 minutes with a TYPO3 specialist, no-obligation.