[mu-plugins/kmst-kalendarz.php](/Users/rafalmateja/Downloads/claude code/mu-plugins/kmst-kalendarz.php) — shortcode .Lipiec — Sierpień 2025
↺ Wróć do dziś
Lipiec 2025
Sierpień 2025
Wydarzenia dnia
Co robi:
- Pokazuje 3 miesiące obok siebie (na desktop) lub poniżej (mobile),
- Domyślny start = bieżący miesiąc,
- Przyciski ← → w nagłówku → URL
?kal_off=±3(jednoklik = przeskok 3 miesiące), - „Wróć do dziś” gdy
kal_off ≠ 0, - Filtr kategoria (dropdown) → URL
?kal_kat=slug, - Każdy dzień z eventami ma kropki w kolorach kategorii (max 3 unikalne kolory +
+Njeśli więcej), - Klik w datę → JSON eventów z
data-eventsna wrapperze parsuje się i renderuje listę POD kalendarzem (.kmst-kalendarz__wydarzenia), - Lista eventów ma te same klasy
.kmst-eventco— wygląd identyczny, kolor kategorii, kropka, czas, miejsce, button „Więcej informacji”,SOB 19.09Kursują Łódzkie Linie Turystyczne
NIE 20.09Kursują Łódzkie Linie Turystyczne
SOB 26.09Kursują Łódzkie Linie Turystyczne
ŚR 30.09Więcej informacjiSpecjalny przejazd tylko dla Klubowiczów
19:00 — 04:00 Szczegóły zostaną wysłane odbierakiemWydarzenie wyłącznie dla aktywnych członków Klubu.
- Legenda kolorów kategorii pod kalendarzem (tylko kategorie z aktualnego zbioru),
- Aktywny dzień ma brand-tło + biały numer,
- Dzień dzisiejszy ma
--brand-dimtło + bold brand numer, - Weekendy — brand kolor w nagłówkach, lekkie wytłumienie liczb dni,
- Po kliknięciu — scroll smooth do listy eventów (UX),
- Zamknij listę przyciskiem ×.
Atrybuty:
[kalendarz_wydarzen] → wszystkie eventy[kalendarz_wydarzen kategoria="rocznica"] → pre-filtr
Wymagana zależność: plugin kmst-wydarzenia.php (już masz). Wykorzystuje nową funkcję kmst_wydarzenia_collect_all() (zwraca też przeszłe eventy, w przeciwieństwie do collect() które filtruje tylko przyszłe).
Dlaczego klik (a nie hover): mobile nie ma hovera — bezsensowne UX. Klik działa wszędzie. Plus dłuższy tekst eventu wygodniej czyta się statycznie pod kalendarzem niż w popupie nad nim.
Stylizacja w spójności z resztą: ten sam container --bg-alt + border + r-md, navbar z brand-button-okrągły (jak w paginacji), eventy używają klas z sekcji 34 (kropka, gradient kategorii itp.).
