Strona

Widget linie

Plugin gotowy: wp-content/mu-plugins/kmst-linie-widget.php

Użycie

[kmst_linia_widget]                                       — wszystko: pigułki + szczegóły + CTA[kmst_linia_widget linia="0" pigulki="0" przycisk="0"]    — tylko karta linii 0[kmst_linia_widget rozwinieta="100" przycisk="0"]         — wszystkie linie, otwarta 100, bez CTA[kmst_linia_widget pigulki="0"]                           — bez pigułek (wszystkie linie rozwinięte? — domyślnie tylko pierwsza)

Atrybuty

atrwartośćdomyślnieopis
linianumer liniijeśli ustawione, widget pokazuje tylko tę linię (i wyłącza pigułki)
pigulki"1" / "0""1"górny pasek wyboru linii
przycisk"1" / "0""1"dolny zielony CTA → /linieturystyczne/
rozwinietanumer liniipierwszaktóra linia rozwinięta na start

Logika

  • Pobiera wszystkie linie_turystyczne gdzie ANY sezon w kalendarz_kursowania ma sezon_koniec ≥ dziś
  • Sortuje numerycznie po linia_numer
  • Jeśli brak linii spełniających warunek → renderuje tylko zielony CTA (chyba że przycisk="0")
  • Status „Dziś kursuje” / „Dziś nie kursuje” liczony przez istniejący helper kmst_linia_kalendarz_status() (uwzględnia 4 AM przesunięcie dla linii nocnych)
  • Tytuł karty = dwa pierwsze kierunek_nazwa z rozklad[0].kierunek[] połączone „–”
  • Opis = informacja__pas.linia_krotki_opis
  • Sezony pokazane jako zdanie „Kursuje od X do Y w dniach…” + chipy 🕒 godziny i co N min
  • Tabor: dla dnia kursowania (runs_today → dziś, w przeciwnym razie next_date) przez kmst_linia_brygady_for_date()

Co siedzi w środku

  • Pigułka: kółko z numerem (kolor linia_kolor) + „Linia X” / typ + status pill po prawej; aktywna ma obrys koloru linii
  • Karta szczegółów (grid 1.4fr/1fr):
    • lewa (ciepły kremowy): duży badge + typ pod spodem, tytuł, krótki opis, sezony, chipy, pill „Strona linii →”
    • prawa (lawendowa): karta kalendarza (zielony = kursuje / fioletowy = nie kursuje + najbliższy kurs), eyebrow „Tabor dziś”, lista B1/B2/B3 z nazwą + meta
  • Zielony CTA w stopce, linkujący do home_url('/linieturystyczne/')

CSS + JS są inlinowane w wp_footer (tylko raz na stronę, niezależnie od liczby shortcode’ów). Pełny dark-mode override przez html[data-theme="dark"]. Responsive: poniżej 760px lewa/prawa kolumna stackują się pionowo.


Naprawione:

  1. Główny bug: CPT slug to linie-turystyczne (myślnik), nie linie_turystyczne (podkreślenie). WP_Query z błędnym post_type zwracał 0 postów, więc cały widget się chował.
  2. Dodany tryb debug
    0

    Radiostacja - Północna

    Najstarsza linia turystyczna KMST, kursująca od 2003 roku. Trasa prowadzi przez historyczne centrum Łodzi — z krancówki Północna w okolicach Manufaktury przez Kościuszki do Stajni Jednorożców i wraca Kilińskiego przez Dworzec Fabryczny aż pod siedzibę Radia Łódź.

    Kursuje od 9 maja 2026 do 30 sierpnia 2026 w poniedziałki, wtorki, środy, czwartki, piątki, soboty i niedziele.

    🕒 11-18co 20-40 min

    Strona linii

    Dowiedz się więcej o liniach turystycznych

    wyrzuca panel z informacjami:
  • czy helpery kmst_* są zarejestrowane
  • dzisiejsza data
  • liczba znalezionych postów CPT linie-turystyczne
  • dla każdego: id, tytuł, lista sezonów z datami i flagą AKTYWNY/archiwalny
  • finalna liczba linii którą widget chce wyrenderować

Widoczny tylko dla zalogowanych adminów (current_user_can('manage_options')), więc bezpieczny do zostawienia.

Po hard refresh widget powinien już pokazywać dane. Jeśli wciąż nic — wrzuć debug="1" i wklej output.