[{"data":1,"prerenderedAt":70},["ShallowReactive",2],{"realizacja-zabudowy-koszy":3},{"id":4,"title":5,"body":6,"description":52,"extension":59,"gotowe":60,"lead":61,"meta":62,"navigation":60,"opisSeo":63,"path":64,"seo":65,"sitemap":66,"stem":67,"tytulSeo":68,"__hash__":69},"realizacje/realizacje/zabudowy-koszy.md","Zabudowy Koszy",{"type":7,"value":8,"toc":51},"minimark",[9,14,18,22,25,28,32,35,38,42,45,48],[10,11,13],"h2",{"id":12},"punktem-wyjścia-był-domyślny-szablon","Punktem wyjścia był domyślny szablon",[15,16,17],"p",{},"Sklep stał na podstawowym szablonie Shopera. Zadanie brzmiało: przerobić główne widoki, dodać kilka sekcji i poprzestawiać to, co układało się nie tak, jak chciał właściciel. Bez przenoszenia sklepu i bez zmiany platformy.",[10,19,21],{"id":20},"edytor-w-panelu-zamiast-plików-na-dysku","Edytor w panelu zamiast plików na dysku",[15,23,24],{},"Shoper jest środowiskiem zamkniętym. W czasie tej realizacji jedyną drogą do szablonu był edytor otwierany w przeglądarce, wewnątrz panelu klienta. Nie ma tu lokalnego środowiska, nie ma repozytorium, nie ma podglądu zmian przed zapisem.",[15,26,27],{},"Dochodzi do tego druga rzecz: modyfikuje się szablony przygotowane przez producenta platformy, więc zakres przebudowy wyznacza to, co one dopuszczają.",[10,29,31],{"id":30},"katalog-po-pojemnościach","Katalog po pojemnościach",[15,33,34],{},"Oferta dzieli się według pojemności pojemnika: 120 i 240 litrów, do tego wersje hybrydowe i linia AGRO. Osobno idą skrzynie i szafy tarasowo-balkonowe w rozmiarach od 475 do 900 litrów. Do tego akcesoria i części serwisowe: półki, wieszaki, zamki z kluczem.",[15,36,37],{},"Sklep prowadzi też blog i zbiera opinie kupujących, obok zwykłej ścieżki zakupu z wyszukiwarką i koszykiem.",[10,39,41],{"id":40},"zmiana-wersji-php-po-stronie-platformy","Zmiana wersji PHP po stronie platformy",[15,43,44],{},"Do sklepu wróciłem latem 2026 roku, przy zapowiedzianej przez platformę aktualizacji PHP. Taka zmiana nie dotyka sklepu bezpośrednio, ale potrafi wywrócić szablon: konstrukcje, które wcześniej przechodziły, w nowszej wersji kończą się błędem kompilacji arkuszy albo pustą stroną z kodem 500.",[15,46,47],{},"Ręczne przejrzenie stu pięćdziesięciu plików szablonu byłoby stratą czasu, więc napisałem skrypt szukający dokładnie tych wzorców, które przy takiej zmianie się sypią — dzielenia w arkuszach, które trzeba domknąć nawiasami, odwołań do niezdefiniowanych zmiennych i miejsc, gdzie funkcja dostaje pustą wartość zamiast liczby. Raport wskazał kandydatów do sprawdzenia, a ja weryfikowałem już tylko te miejsca, nie całość.",[15,49,50],{},"Pliki pobierałem przy tym przez WebDAV, więc tym razem szablon dało się czytać lokalnie, bez pracy w okienku przeglądarki.",{"title":52,"searchDepth":53,"depth":53,"links":54},"",2,[55,56,57,58],{"id":12,"depth":53,"text":13},{"id":20,"depth":53,"text":21},{"id":30,"depth":53,"text":31},{"id":40,"depth":53,"text":41},"md",true,"Sklep z zabudowami koszy na śmieci i skrzyniami tarasowymi na Shoperze. Pracowałem na cudzym szablonie, w edytorze wbudowanym w panel sklepu.",{},"Modyfikacja szablonu Shopera dla sklepu z zabudowami koszy na śmieci. Przebudowa głównych widoków w edytorze panelu, bez dostępu do plików.","/realizacje/zabudowy-koszy",{"description":52},{"loc":64},"realizacje/zabudowy-koszy",null,"MJajMgalhmEii1tQMfRCv6hMoYAhocfVWDkBvvN3peU",1789996027866]