Skip to content
Rozszerzenie TYPO3

Godziny otwarcia dla TYPO3

Godziny otwarcia na stronach TYPO3: regularne i specjalne, święta oraz aktualny status. slub_web_openhours nie jest publicznie dostępne.

Umów bezpłatną konsultację

Odwiedzający chcą wiedzieć, czy instytucja jest właśnie otwarta, a nie sprawdzać regulaminowe godziny

Najczęstszym pytaniem, jakie odwiedzający zadają na stronie biblioteki, muzeum lub urzędu, jest proste: czy jesteście teraz otwarci? Mimo to większość witryn TYPO3 pokazuje statyczną tabelę regularnych godzin otwarcia, która w święta, dni okołoświąteczne i dni okolicznościowych zamknięć jest po prostu błędna. Rozwiązaniem jest system zarządzania godzinami otwarcia, który prowadzi regularne godziny otwarcia, święta i specjalne godziny otwarcia w jednej strukturze danych i wyświetla we frontendzie aktualny status: Otwarte (zielony) lub Zamknięte (czerwony), wraz z najbliższym terminem otwarcia. slub_web_openhours pochodzi, sądząc po nazwie, od SLUB Drezno (Saksońska Biblioteka Krajowa, Państwowa i Uniwersytecka), ale nie jest opublikowane ani w TER, ani na Packagist, ani w publicznych repozytoriach SLUB na GitHubie; nie da się więc sprawdzić jego funkcji.

Typowe scenariusze dotyczą bibliotek, muzeów i instytucji samorządowych

Podstawowym scenariuszem są biblioteki uczelniane z wieloma lokalizacjami. Biblioteka Uniwersytecka prowadzi kilka oddziałów o różnych godzinach otwarcia. Główny gmach ma inne godziny niż filia, a w okresie wakacyjnym obowiązują skrócone godziny otwarcia. System zarządzania godzinami otwarcia prowadzi każdą lokalizację jako osobny rekord z własnymi godzinami. Na stronie student od razu widzi, która lokalizacja jest właśnie otwarta i do której godziny.

Drugim scenariuszem są muzea i galerie. Muzeum Sztuki ma regularne godziny otwarcia (wt-nd 10-18, pn zamknięte), ale wydłużone godziny w trakcie wystawy specjalnej (codziennie do 21) i zamknięcia w święta. Warto wprowadzać te wyjątki dla zdefiniowanych okresów bez zmiany regularnych godzin. Po upływie okresu specjalnego automatycznie obowiązują wtedy znów godziny standardowe.

Trzeci scenariusz: instytucje samorządowe takie jak biura obsługi mieszkańców, baseny i domy kultury. Miasto z 20 obiektami publicznymi prowadzi godziny otwarcia centralnie w backendzie TYPO3. Na każdej stronie obiektu widżet pokazuje aktualny status. Latem basen zewnętrzny ma inne godziny niż zimą, a w długie weekendy biuro obsługi mieszkańców jest zamknięte. Wszystko to musi odwzorować system zarządzania godzinami otwarcia.

Architektura techniczna przechowuje reguły i wyjątki w kalendarycznej strukturze danych

Taki system potrzebuje trzech poziomów danych: regularne godziny (poniedziałek do niedzieli, godzina:minuta do godzina:minuta), wyjątki cykliczne (święta powtarzające się co roku) i wyjątki jednorazowe (zamknięcie 15 marca, wydłużone otwarcie 24 grudnia). Regularne godziny stanowią bazę, wyjątki je nadpisują. Logika jest prosta: czy dla bieżącej daty istnieje wyjątek? Jeśli tak, obowiązują godziny wyjątkowe. Jeśli nie, obowiązują regularne godziny dla danego dnia tygodnia.

Plugin frontendowy renderuje status przez szablony Fluid. Aktualny stan (otwarte/zamknięte) jest obliczany po stronie serwera i emitowany jako klasa CSS, dzięki czemu kolorystyką można sterować przez Tailwind lub własne CSS. Opcjonalnie widżet pokazuje najbliższy termin otwarcia: “Aktualnie zamknięte. Najbliższe otwarcie: poniedziałek, 08:00”.

Dla integracji ze Schema.org godziny można emitować jako OpeningHoursSpecification w JSON-LD i w ten sposób przekazywać je Google, choć Google nie gwarantuje ich wyświetlenia. Instytucje, które chcą pokazywać poprawne godziny otwarcia w Google Maps, utrzymują je więc dodatkowo bezpośrednio w Profilu Firmy w Google, łącznie z godzinami specjalnymi.

Częste problemy dotyczą stref czasowych, brakujących świąt i cache’owania

Najczęstszym problemem jest cache. Gdy TYPO3 cache’uje stronę, a cache wygasa dopiero po dwóch godzinach, widżet przez nawet dwie godziny pokazuje błędny status. Rozwiązanie: osadzić widżet godzin otwarcia jako uncached plugin przez USER_INT. Kosztuje to minimalnie wydajności (jedno zapytanie do bazy na request), ale gwarantuje poprawny status.

Drugi problem: brakujące święta. TYPO3 nie dostarcza prekonfigurowanej listy świąt. Każda instytucja musi wprowadzić swoje święta ręcznie lub uzupełnić je przez import. W Polsce ważne jest uwzględnienie świąt państwowych takich jak 1 i 3 maja, 11 listopada, Boże Ciało, jak również odmiennych dat ruchomych. Można je importować skryptem z publicznych źródeł kalendarzowych.

Trzeci temat: strefy czasowe w instytucjach międzynarodowych. Obliczenia po stronie serwera korzystają ze strefy czasowej serwera. Gdy serwer TYPO3 działa w UTC, a instytucja w czasie środkowoeuropejskim, wyświetlane godziny się nie zgadzają. Rozwiązanie: ustawić strefę czasową PHP w konfiguracji TYPO3 na strefę instytucji, a w przypadku instytucji w wielu strefach dostosować obliczenie przez UTC+offset w szablonie Fluid.

slub_web_openhours nie jest publicznie dostępne

slub_web_openhours nie jest opublikowane ani w TER, ani na Packagist, a wśród publicznych repozytoriów SLUB Drezno na GitHubie tego rozszerzenia nie ma. Nie da się więc sprawdzić, które wersje TYPO3 obsługuje. Gosign zaleca przy projektach godzin otwarcia sprawdzać wyjście Schema.org narzędziami testowymi Google i równolegle utrzymywać godziny w Profilu Firmy w Google, aby poprawnie pojawiały się w Google Maps i w profilu firmy w wyszukiwarce.

Bezpłatna konsultacja: 30 minut ze specjalistą TYPO3

Analizujemy Twój projekt, szacujemy nakład i termin - bez zobowiązań, bez przygotowania.

Omów projekt, 30 min, bezpłatnie

25 lat doświadczenia z TYPO3 · 800+ przeanalizowanych rozszerzeń · Rozwój przyspieszony przez AI

Rozwój przyspieszony przez AI: 65% szybciej

Aktualizacja TYPO3 i audyt RODO

Aktualizujemy Twoją instalację TYPO3 ekonomicznie do aktualnej wersji LTS - wraz ze wszystkimi rozszerzeniami, również przestarzałymi i niewspieranymi.

Wszystkie rozszerzenia zmigrowane

Również przestarzałe, niewspierane lub własne.

Cena stała

Przejrzyste koszty, bez ukrytych prac dodatkowych.

Przyspieszone AI

30-50% taniej niż rynek dzięki analizie kodu wspomaganej przez AI.

Zero utraty danych

Pełna migracja danych z zabezpieczeniem rollback.

Audyt RODO: Sprawdzamy Twoją instalację TYPO3 pod kątem zgodności z RODO - zgody cookie, tracking, rozszerzenia, formularze i hosting - i wdrażamy wszystkie działania ekonomicznie.

Gosign to agencja cyfrowa z Hamburga z 25-letnim doświadczeniem w rozwoju TYPO3. Przeanalizowaliśmy ponad 800 rozszerzeń TYPO3 i dziś rozwijamy je przy wsparciu AI nawet o 70% szybciej niż metodami klasycznymi. Naszymi klientami są średnie przedsiębiorstwa, uczelnie wyższe i instytucje publiczne w Europie.

Stan: kwiecień 2026

Umów bezpłatną konsultację

30 minut ze specjalistą TYPO3, bez zobowiązań.

Umów spotkanie