01 · Wyzwanie
Wyzwanie
Perfect Blue sprzedaje gry i akcesoria do konsol – kilka tysięcy produktów, ruch napędzany premierami i preorderami. Gotowe wtyczki do WooCommerce nie posiadały funkcji oczekiwanych przez klienta: list premier, powrotów tytułów na stan i przecen liczonych od realnej obniżki, a nie od przekreślonej ceny. Klient chciał pokazać te rzeczy na stronie głównej i na osobnych podstronach, z zakładkami per platforma, tak jak wyglądały w jego makiecie. Osobnym tematem była wydajność: sklep z kilkuset tysiącami wpisów w tabelach zamówień odpowiadał zalogowanym klientom wolno.
02 · Rozwiązanie
Rozwiązanie
Napisałem wtyczkę, w której każdy moduł jest osobną, wyłączalną częścią:
- kalendarz premier – siatka miesiąca i lista nadchodzących tytułów, budowane z dat premier zapisanych przy produktach,
- przeceny i powroty na stan – własne stemple czasu przy produkcie: stempel powstaje przy realnej obniżce ceny albo powrocie towaru na stan, więc listy pokazują to, co faktycznie się wydarzyło,
- nowości i bestsellery – bestsellery liczone z zamówień z ostatnich 30 dni, z podziałem na platformy i osobną zakładką preorderów,
- sortowanie – wyprzedane produkty trafiają na koniec każdej listy, także po filtrowaniu,
- panel ustawień – nazwy sekcji, kolejność zakładek i limity klient zmienia sam.
Moduły powstawały na środowisku testowym, z testami automatycznymi i kontrolą jakości kodu przy każdej zmianie; przed wdrożeniem na produkcję kod przeszedł osobny audyt bezpieczeństwa. Równolegle wykonałem audyt wydajności: ograniczyłem ilość danych wczytywanych przy każdym otwarciu strony, przyspieszyłem sortowanie list produktów, tak żeby sklep przeszukiwał kilka tysięcy wierszy zamiast kilkunastu milionów, i ustawiłem pamięć podręczną tak, żeby ceny w modułach były zawsze aktualne, a sklep nie budował setek kart produktów od nowa przy każdym wejściu.
03 · Efekty
Efekty
Strona główna i podstrony sklepu pokazują premiery, przeceny, powroty na stan i bestsellery bez ręcznego prowadzenia list. Sortowanie list produktów przeszukuje kilka tysięcy wierszy zamiast kilkunastu milionów. Sposób współpracy z klientem: kolejne poprawki i moduły trafiają do sklepu tą samą ścieżką – najpierw środowisko testowe, potem produkcja.
Z onenet współpracujemy już od dawna - bez profesjonalnej opieki na co dzień oraz w sytuacjach kryzysowych, która zapewnia ciągłość pracy serwisu internetowego, nie wyobrażamy już sobie funkcjonowania naszej firmy. Szczerze polecamy. PerfectBlue.pl