Pilna sprawa ze sklepem? 573 003 991 kontakt@edukowski.pl pon.–pt. 8:00–16:00
PrestaShop · 8 min czytania

PrestaShop 9: co się zmieniło i czy warto aktualizować

Nowe Admin API, motyw Hummingbird, PHP 8.1 do 8.4 i duże porządki w kodzie. Co z modułów pisanych pod 1.7 przestaje działać, kiedy aktualizować, a kiedy lepiej postawić sklep od nowa.

Eryk Dukowski
Eryk Dukowski
PrestaShop
PrestaShop 9.
Baza wiedzy EDUKOWSKI
Potrzebujesz pomocy?

Zrobimy to za Ciebie. Opisz problem, a odpowiemy w ciągu 24 godzin roboczych.

Opisz projekt
Oznaczenia w artykule
WażnePilneWskazówkaZ praktykiKrok po kroku

PrestaShop 9.0.0 ukazał się 10 czerwca 2025 i jest pierwszą od lat wersją, która zmienia fundamenty, a nie tylko dokłada funkcje. Nowe API panelu, nowy motyw, wyższe wymagania PHP i usunięcie dużej ilości starego kodu. Dla właściciela sklepu sprowadza się to do jednego pytania: aktualizować teraz, poczekać, czy postawić sklep od nowa i przenieść dane. Odpowiadamy na podstawie aktualizacji, które zrobiliśmy od premiery.

W skrócie

  • PrestaShop 9 wymaga PHP od 8.1 do 8.4, Symfony 6.4 LTS i Composera 2. Bez PHP 8.1 lub nowszego na serwerze aktualizacja nie ruszy.
  • Trzy zmiany, które odczujesz: Admin API oparte na API Platform, nowy motyw Hummingbird i porządki w kodzie, po których część starych modułów przestaje działać.
  • Z wersji 8.x aktualizujesz modułem Update Assistant (dawniej 1-Click Upgrade). Z 1.7 też się da, ale najpierw trzeba przejrzeć każdy moduł i każde nadpisanie rdzenia.
  • Sklep z nadpisanym rdzeniem, dziesiątkami porzuconych modułów i szablonem sprzed lat zwykle taniej postawić od nowa i przenieść dane niż aktualizować.

Co dokładnie weszło w wersji 9

Premiera 9.0.0 miała miejsce 10 czerwca 2025. Dla sklepu liczą się trzy rzeczy: nowy sposób łączenia się z panelem, nowy motyw i inne wymagania serwera.

Admin API oparte na API Platform

Do tej pory integracje z panelem PrestaShop pisało się na starym webservice, który powstał jeszcze w czasach wersji 1.4 i od lat był rozwijany tylko w minimalnym stopniu. Wersja 9 dodaje Admin API zbudowane na API Platform, czyli na standardowym narzędziu ze świata Symfony. Integracje z ERP, OMS czy BaseLinkerem będą dzięki temu stabilniejsze, a każda aplikacja dostaje własne uprawnienia zamiast jednego klucza do wszystkiego. Stare webservice nadal działa, więc obecne integracje nie przestaną działać z dnia na dzień, ale nowe warto pisać już na Admin API.

Motyw Hummingbird

Hummingbird to nowy motyw napisany od zera, lżejszy i oparty na współczesnym stosie front-endowym. Dotychczasowy motyw Classic jest nadal dostępny, więc nikt nie zmusza Cię do zmiany wyglądu sklepu przy aktualizacji. Jeśli jednak Twój szablon pochodzi z 2018 roku i był wielokrotnie łatany, Hummingbird jest dobrym punktem wyjścia do nowego projektu. Trzeba tylko pamiętać, że moduły z własnym front-endem, np. filtry, menu czy slidery, były pisane pod Classic i nie zawsze działają poprawnie na nowym motywie bez poprawek.

Porządki w kodzie

Zespół PrestaShop usunął dużo przestarzałego kodu, który był oznaczony do usunięcia jeszcze w wersjach 1.7 i 8. Kolejne części panelu przeniesiono na Symfony 6.4. Dobra wiadomość dla bezpieczeństwa sklepu, zła dla modułów, które korzystały z tych starych fragmentów. Tu pojawia się większość problemów przy aktualizacji.

Wymagania serwera: PHP 8.1 do 8.4 i Symfony 6.4

Zanim zaczniesz cokolwiek planować, sprawdź w panelu hostingu, jaką wersję PHP możesz włączyć. PrestaShop 9 wymaga PHP od 8.1 do 8.4. Jeśli hosting oferuje najwyżej 8.0 lub 7.4, aktualizacja jest niemożliwa bez zmiany serwera, i to jest pierwszy koszt, który trzeba policzyć.

Wersja PrestaShopPHPStan wsparcia
1.6PHP 5 i wczesne 7bez wsparcia od czerwca 2019
1.7.8PHP 7tylko poprawki bezpieczeństwa, utrzymanie zakończone wraz z wydaniem 9.0
8.xPHP 7.2 do 8.x zależnie od wydaniawspierany, bez ogłoszonej daty końca
9.0PHP 8.1 do 8.4zalecany cel aktualizacji, Symfony 6.4 LTS, Composer 2

Composer 2 ma znaczenie głównie dla programistów i przy instalacji z repozytorium. Przy gotowej paczce lub Update Assistant nie instalujesz go sam, ale hosting powinien dawać dostęp do linii komend, bo bez tego trudno o sprawny rollback.

Co z modułów pisanych pod 1.7 przestaje działać

Nie ma jednej listy niezgodnych modułów, bo wszystko zależy od tego, jak moduł został napisany. Są jednak powtarzalne wzorce, które widzimy przy każdej aktualizacji.

  • Moduły korzystające z funkcji usuniętych w PHP 8. Kod pisany pod PHP 7 często używa konstrukcji, które w PHP 8.1 i wyżej zgłaszają błąd albo ostrzeżenie. Sklep działa, ale dziennik błędów rośnie o setki wpisów dziennie.
  • Moduły oparte na klasach, które zniknęły w porządkach. Jeśli autor sięgał do wewnętrznych klas panelu zamiast do oficjalnych hooków, po aktualizacji moduł nie uruchomi się wcale.
  • Moduły z nadpisaniami (override) klas rdzenia. Nadpisanie kopiuje fragment kodu PrestaShop i go zmienia. Gdy rdzeń się zmienia, nadpisanie zostaje stare i psuje np. liczenie koszyka albo zapis zamówienia.
  • Moduły front-endowe przy przejściu na Hummingbird. Szablony Smarty i skrypty pisane pod Classic potrafią wyświetlać się krzywo albo wcale.
  • Moduły porzucone przez autora. Jeśli ostatnia aktualizacja była trzy lata temu, nie licz na wersję zgodną z 9. Trzeba szukać zamiennika.

Jak to sprawdzić przed aktualizacją

Wyeksportuj listę modułów z panelu z wersjami i datami ostatniej aktualizacji. Dla każdego sprawdź u autora deklarowaną zgodność z 9.0. Potem zajrzyj do katalogu override w sklepie: każdy plik w nim to potencjalny problem. Na koniec sprawdź, czy szablon jest motywem potomnym Classic, czy luźną kopią z własnymi zmianami w setkach plików. Z tej listy powstaje realny kosztorys aktualizacji.

Ważne

Oznaczenie „zgodny z PrestaShop 8” nie oznacza zgodności z 9. Porządki w kodzie między 8 a 9 były większe niż między 1.7 a 8. Pytaj autora modułu wprost o wersję 9.0 i o PHP 8.4.

Kiedy aktualizować

Aktualizacja ma sens, gdy sklep jest w dobrym stanie technicznym i chcesz ten stan utrzymać. W praktyce oznacza to kilka warunków spełnionych jednocześnie.

  • Sklep działa na 8.x, a moduły pochodzą od autorów, którzy nadal je rozwijają.
  • Szablon jest motywem potomnym Classic albo własnym motywem utrzymywanym przez wykonawcę.
  • Katalog override jest pusty albo zawiera kilka plików, które da się przepisać na hooki.
  • Hosting daje PHP 8.1 lub wyżej i możliwość zrobienia pełnej kopii sklepu.
  • Masz lub możesz mieć środowisko testowe, na którym aktualizację sprawdzisz przed startem.

Jeśli sklep stoi na 1.7.8, nadal działa i sprzedaje, ale od wydania 9.0 nie dostaje już nawet poprawek bezpieczeństwa. To nie jest powód do paniki w tym tygodniu, ale jest powód, żeby zaplanować przejście na miesiące, a nie na lata. Opisaliśmy to osobno w artykule o końcu wsparcia 1.6 i 1.7.

Kiedy stawiać sklep od nowa

Druga droga to czysta instalacja PrestaShop 9 i przeniesienie danych: produktów, klientów, zamówień, adresów URL i przekierowań. Brzmi drożej, ale często wychodzi taniej, bo nie płacisz za naprawianie rzeczy, których i tak nie chcesz.

  • Sklep jest na 1.6 albo wczesnym 1.7 i nie było dla niego ścieżki aktualizacji bez ręcznych poprawek.
  • Rdzeń był zmieniany bezpośrednio w plikach systemu, a nikt nie wie już, gdzie i po co.
  • Masz kilkadziesiąt modułów, z czego połowy nikt nie używa, a część nie ma już autora.
  • Szablon kupiony lata temu nie był aktualizowany i chcesz przy okazji zmienić wygląd.
  • W bazie są duplikaty produktów, martwe kategorie i tysiące nieaktywnych pozycji po starych importach.

Przy nowej instalacji najważniejsze jest zachowanie adresów URL i przekierowań, inaczej sklep traci pozycje w Google. Jak to zrobić, opisaliśmy w artykule o migracji bez utraty pozycji, a sam proces przenoszenia na stronie o migracji PrestaShop.

Z naszej praktyki

Sklep z branży motoryzacyjnej działał na 1.7.6 z 68 modułami i 31 plikami nadpisań rdzenia. Próba aktualizacji na kopii wykazała, że 19 modułów nie uruchamia się na PHP 8.1, a dwa z nich odpowiadały za ceny dla warsztatów. Policzyliśmy obie drogi. Nowa instalacja 9.0 z 14 modułami i przeniesieniem 11 tysięcy produktów, 9 tysięcy klientów i historii zamówień wyszła o około jedną trzecią taniej niż naprawa starego sklepu, a strona kategorii ładuje się dwa razy szybciej.

Jak podchodzimy do decyzji

Krok po kroku

  1. Inwentaryzacja. Lista modułów z wersjami i datami, zawartość katalogu override, rodzaj szablonu, wersja PHP na hostingu.
  2. Próbna aktualizacja na kopii. Uruchamiamy Update Assistant na kopii sklepu i spisujemy wszystko, co się posypało. To zajmuje dzień, a daje twarde dane zamiast domysłów.
  3. Kosztorys dwu wariantów. Aktualizacja z naprawą modułów kontra nowa instalacja z przeniesieniem danych. Z liczbą godzin i listą ryzyk.
  4. Decyzja i termin. Wybieramy wariant, ustalamy okno poza sezonem i przygotowujemy plan powrotu, gdyby coś poszło nie tak.
  5. Start i dwa tygodnie obserwacji. Po przełączeniu codziennie sprawdzamy dziennik błędów, płatności, wysyłkę maili i integracje.

Aktualizacja do 9 to nie jest kliknięcie przycisku. To przegląd wszystkiego, co przez lata dokładano do sklepu, i decyzja, co z tego ma zostać.

Pytania, które słyszymy najczęściej

Czy muszę aktualizować do 9, skoro 8.x jest nadal wspierany?

Nie musisz dziś. PrestaShop 8.x nadal dostaje poprawki i nie ma ogłoszonej daty końca. Ale 9 jest zalecanym celem, a nowe moduły i integracje będą powstawać właśnie pod nią, więc odkładanie w nieskończoność nie ma sensu.

Czy mogę aktualizować bezpośrednio z 1.7 do 9?

Update Assistant obsługuje taką drogę, ale w praktyce większość pracy to nie sama aktualizacja, tylko moduły i nadpisania rdzenia. Przy mocno zmienionym sklepie na 1.7 częściej wychodzi nowa instalacja.

Czy muszę zmienić motyw na Hummingbird?

Nie. Classic jest nadal dostępny i działa w 9. Hummingbird ma sens przy nowym projekcie wyglądu albo przy nowej instalacji.

Ile trwa aktualizacja do 9?

Przy zadbanym sklepie na 8.x z kilkunastoma aktualnymi modułami: kilka dni z testami. Przy sklepie z 1.7 z dziesiątkami modułów: od dwu do kilku tygodni, zależnie od tego, ile trzeba wymienić.

Chcesz wiedzieć, która droga jest dla Twojego sklepu tańsza i bezpieczniejsza? Zrobimy próbną aktualizację na kopii i przedstawimy kosztorys obu wariantów. Zobacz, jak przechodzimy na PrestaShop 9.

Przydało się?

Oceń ten artykuł

Brak ocen. Bądź pierwszy.
Podaj dalej

Udostępnij artykuł

Eryk Dukowski
Autor
Eryk Dukowski

Właściciel EDUKOWSKI. Od 2015 roku programuję sklepy PrestaShop, moduły i integracje z systemami ERP. Piszę o tym, co widzę w codziennej pracy ze sklepami: wydajności, sprzedaży B2B, automatyzacji i migracjach.

Podobne artykuły

Wszystkie artykuły →