Kiedy zarządzasz sklepem PrestaShop wyłącznie z poziomu panelu administracyjnego, wiele rzeczy robisz ręcznie: klikasz w moduły, odświeżasz cache, sprawdzasz ustawienia, czekasz na przebudowanie indeksów, regenerujesz obrazki albo szukasz przyczyny błędu metodą prób i poprawek. CLI pozwala skrócić tę drogę. Zamiast przechodzić przez kilka ekranów w Back Office, uruchamiasz jedną komendę w terminalu.

W praktyce zyskujesz najwięcej wtedy, gdy zadanie jest powtarzalne, ciężkie dla przeglądarki albo powinno działać w kontrolowanym procesie wdrożeniowym. PrestaShop korzysta z komponentu Symfony Console, a oficjalna dokumentacja pokazuje, że komendy uruchamiasz z katalogu głównego sklepu według schematu

php bin/console nazwa-komendy

To dobry punkt wyjścia zarówno dla developera, jak i osoby technicznej opiekującej się sklepem.

W tym poradniku znajdziesz 10 komend CLI, które realnie pomagają oszczędzać czas: od czyszczenia cache, przez debugowanie i moduły, po indeks wyszukiwarki, miniatury, motywy, konfigurację, flagi funkcji oraz bazę danych. Jeśli dopiero stawiasz sklep, zacznij od poradnika jak zainstalować PrestaShop szybko i wygodnie. Jeśli pracujesz już na produkcji, potraktuj ten tekst jak checklistę do bezpiecznej automatyzacji.

Czego dowiesz się z tego wpisu?

Zanim uruchomisz CLI w PrestaShop

CLI działa najlepiej wtedy, gdy masz porządek w środowisku. Zaloguj się przez SSH, przejdź do katalogu głównego sklepu i upewnij się, że używasz właściwej wersji PHP.

cd /sciezka/do/prestashop
php -v
php bin/console --version

To ważne szczególnie na hostingach, gdzie równolegle dostępnych jest kilka wersji PHP, a sklep może działać na innej niż domyślna w terminalu. W cyber_Folks możesz ustawić właściwą wersję PHP dla CLI w pliku .bashrc, np. przez dodanie odpowiedniej ścieżki lub aliasu, a następnie przeładowanie konfiguracji poleceniem . ~/.bashrc. Szczegóły znajdziesz w poradniku jak zmienić wersję PHP w CLI.

Przed komendami, które zmieniają dane, moduły, motyw lub strukturę bazy, wykonaj kopię zapasową plików i bazy. To nie jest formalność. CLI jest szybkie, ale właśnie dlatego łatwo wykonać operację szerzej, niż planujesz. Dobra praktyka brzmi: najpierw staging, potem produkcja, a na produkcji najlepiej poza godzinami największego ruchu.

Warto wiedzieć: CLI przydaje się najbardziej wtedy, gdy masz dostęp SSH. Na hostingu PrestaShop możesz pracować z plikami bezpośrednio na serwerze, korzystać z rozwiązań typu Git i połączyć komendy PrestaShop z procesem wdrażania zmian.

Komenda list i –help. Sprawdź, co masz w instalacji

Pierwsza komenda nie zmienia niczego w sklepie, ale oszczędza mnóstwo czasu. list pokazuje dostępne polecenia w Twojej konkretnej instalacji. To ważne, bo lista komend zależy od wersji PrestaShop, modułów i środowiska. Nie zakładaj, że każda komenda z poradnika lub dokumentacji będzie dostępna w każdej wersji sklepu.

php bin/console list
php bin/console prestashop:module --help
php bin/console prestashop:search:index --help

Największa oszczędność pojawia się przy --help. Zamiast szukać w sieci składni, sprawdzasz argumenty i opcje bezpośrednio w środowisku. Gdy pracujesz na kilku sklepach, rób to za każdym razem po zmianie wersji PrestaShop. To prosty sposób, aby uniknąć błędów wynikających z różnic między 1.7, 8.x i 9.x.

Praktyczna porada: zapisz wynik php bin/console list do pliku po większej aktualizacji. Dzięki temu szybko porównasz, które komendy doszły, zniknęły albo zmieniły się.

php bin/console list > cli-komendy-po-aktualizacji.txt

cache:clear. Wyczyść cache po zmianach

Jeśli po wdrożeniu zmiany sklep nadal pokazuje stary widok, problem często leży w cache. cache:clear to jedna z tych komend, które developerzy uruchamiają odruchowo po zmianach w konfiguracji, szablonach, modułach lub środowisku.

php bin/console cache:clear

Nie traktuj tej komendy jak magicznego naprawiacza wszystkiego. Używaj jej świadomie: po wdrożeniu, po zmianie konfiguracji, po aktualizacji modułu, po poprawkach w szablonie i po przełączeniu trybu debugowania. W większych sklepach warto wykonywać ją w momencie mniejszego ruchu, bo czyszczenie i ponowne budowanie cache może chwilowo zwiększyć obciążenie.

Jeśli sklep działa na zoptymalizowanym środowisku, pamiętaj, że cache może istnieć na kilku warstwach: aplikacja PrestaShop, Smarty, serwer, LS Cache, Redis, przeglądarka i CDN, jeśli go używasz. Na hostingu dla PrestaShop warto łączyć porządek w cache aplikacji z technologiami przyspieszającymi sklep, takimi jak LiteSpeed, LS Cache, Redis i cyber_Boost.

prestashop:debug. Diagnozuj błędy bez klikania

Tryb debugowania jest potrzebny wtedy, gdy sklep przestaje działać poprawnie, a standardowy widok ukrywa szczegóły błędu. Z poziomu CLI możesz sprawdzić stan debugowania, włączyć go na czas diagnozy i wyłączyć po zakończeniu pracy.

php bin/console prestashop:debug
php bin/console prestashop:debug on
php bin/console prestashop:debug off

Najważniejsza zasada: nie zostawiaj debugowania włączonego na produkcji. Tryb debugowania może ujawniać informacje techniczne, które nie są przeznaczone dla klientów ani osób postronnych. Włącz go tylko na czas diagnozy, zapisz komunikat błędu, sprawdź logi, a potem wróć do trybu standardowego.

Ta komenda jest szczególnie przydatna, gdy pojawia się biały ekran, panel administracyjny nie odpowiada albo błąd występuje po aktualizacji modułu. Więcej scenariuszy diagnostycznych znajdziesz w poradniku Biała strona w PrestaShop? Poznaj skuteczne rozwiązania.

prestashop:module. Zarządzaj modułami z terminala

Moduły potrafią przyspieszać sprzedaż, automatyzować procesy i dodawać ważne integracje. Potrafią też powodować konflikty. Komenda prestashop:module pozwala wykonywać najważniejsze operacje bez przeklikiwania panelu: instalować, odinstalowywać, włączać, wyłączać, resetować, aktualizować, konfigurować i usuwać moduły.

php bin/console prestashop:module install nazwa_modulu
php bin/console prestashop:module enable nazwa_modulu
php bin/console prestashop:module disable nazwa_modulu
php bin/console prestashop:module reset nazwa_modulu
php bin/console prestashop:module upgrade nazwa_modulu

To świetne narzędzie do wdrożeń. Możesz przygotować skrypt, który po wrzuceniu kodu włączy potrzebny moduł, wyłączy moduł testowy, zaktualizuje zależności i wyczyści cache. Dzięki temu ograniczasz ryzyko, że ktoś zapomni kliknąć jedną opcję w Back Office.

Dobra praktyka: przed wyłączeniem modułu na produkcji sprawdź, czy nie obsługuje płatności, dostawy, fakturowania, feedu produktowego, remarketingu albo innej funkcji krytycznej dla sprzedaży. Szybka komenda jest wygodna, ale decyzja nadal musi być świadoma.

prestashop:search:index. Odbuduj wyszukiwarkę produktów

Wyszukiwarka produktowa ma bezpośredni wpływ na sprzedaż. Jeśli klient wpisuje nazwę produktu, cechę, model albo popularną frazę i nie znajduje właściwych wyników, traci czas. Po dużym imporcie produktów, aktualizacji nazw, zmianie atrybutów albo migracji warto odbudować indeks wyszukiwania.

php bin/console prestashop:search:index --full

W większych katalogach pełna przebudowa indeksu może potrwać, dlatego wykonuj ją poza godzinami szczytu. Jeśli problem dotyczy jednego produktu, sklepu lub grupy sklepów, użyj opcji zawężających zakres działania.

php bin/console prestashop:search:index --product-id=42
php bin/console prestashop:search:index --shop-id=2
php bin/console prestashop:search:index --full --shop-id=2

Najlepszy moment na tę komendę to koniec importu lub wdrożenia, nie początek. Najpierw zaktualizuj produkty, sprawdź błędy importu, dopiero potem odśwież indeks. Dzięki temu nie wykonujesz ciężkiej operacji dwa razy.

prestashop:thumbnails:regenerate. Odśwież miniatury po zmianach zdjęć

Zmiana szablonu, rozmiarów grafik, wyglądu listingów albo kart produktów często wymaga regeneracji miniatur. Ręczne wykonywanie tego z panelu bywa niewygodne, zwłaszcza przy dużej liczbie produktów. W PrestaShop 9.1 dostępna jest komenda prestashop:thumbnails:regenerate, która pozwala zrobić to z terminala.

php bin/console prestashop:thumbnails:regenerate products
php bin/console prestashop:thumbnails:regenerate categories 5
php bin/console prestashop:thumbnails:regenerate all --delete

Opcja --delete usuwa wcześniejsze miniatury przed wygenerowaniem nowych. Używaj jej ostrożnie, najlepiej po backupie i testach na stagingu. W dużym sklepie operacja może mocno pracować na plikach, dlatego zaplanuj ją wtedy, gdy sklep ma mniejszy ruch.

Regeneracja miniatur to też dobry moment na porządek w obrazkach. Jeśli sklep ma dużo ciężkich zdjęć, sprawdź możliwości optymalizacji. W cyber_Folks do tego obszaru naturalnie pasuje cyber_Boost, który optymalizuje m.in. bazę, ustawienia i grafiki. Więcej przeczytasz w artykule PrestaShop z cyber_Boost – co to jest i dlaczego warto włączyć?.

prestashop:theme:enable. Przełącz motyw po wdrożeniu

Motyw odpowiada za pierwsze wrażenie, układ treści, prezentację produktów i wiele elementów ścieżki zakupowej. Komenda prestashop:theme:enable pozwala włączyć motyw z poziomu CLI. Przydaje się podczas wdrożeń, testów zgodności, migracji sklepu albo przywracania działania po problemach z szablonem.

php bin/console prestashop:theme:enable nazwa_motywu

Po przełączeniu motywu sprawdź nie tylko stronę główną. Przejdź przez listing kategorii, kartę produktu, koszyk, logowanie, rejestrację, checkout, komunikaty błędów, e-maile transakcyjne i widoki mobilne. Motyw może wyglądać dobrze na stronie głównej, a jednocześnie psuć krok zamówienia albo moduł dostawy.

Warto też pamiętać o zmianach w ekosystemie PrestaShop. Wersja 9.1 wprowadziła Hummingbird 2.0 jako nowy domyślny motyw i przyniosła sporo zmian dla developerów oraz integratorów. Rozwinięcie tego tematu znajdziesz we wpisie PrestaShop 9.1 – nowy motyw, lepsza wydajność i stabilne działanie.

prestashop:config. Zmieniaj konfigurację bez panelu

prestashop:config pozwala pobierać, ustawiać i usuwać wartości konfiguracyjne sklepu. To komenda dla osób, które wiedzą, co zmieniają. Daje dużą wygodę przy automatyzacji, ale wymaga znajomości kluczy konfiguracyjnych i wpływu danej wartości na sklep.

php bin/console prestashop:config get PS_LANG_DEFAULT
php bin/console prestashop:config set PS_MAIL_SERVER --value "smtp.example.com"
php bin/console prestashop:config remove NAZWA_KLUCZA

Największy zysk pojawia się w powtarzalnych wdrożeniach. Możesz przygotować zestaw wartości dla środowiska testowego, stagingowego i produkcyjnego. Nie musisz ręcznie przeklikiwać wielu ustawień po każdej migracji albo odtworzeniu sklepu.

Zwróć uwagę: jeśli działasz w multistore, sprawdzaj opcje związane z kontekstem sklepu i grupy sklepów. Zmiana wykonana globalnie może objąć więcej, niż planujesz. Zanim użyjesz set, uruchom get i zapisz poprzednią wartość.

prestashop:feature-flag. Testuj nowe funkcje kontrolowanie

Nowe funkcje w PrestaShop mogą być udostępniane stopniowo, za pomocą flag funkcji. To wygodne w środowiskach testowych, gdy chcesz sprawdzić zachowanie sklepu bez przechodzenia przez kilka ekranów panelu. Komenda pozwala wyświetlić dostępne flagi oraz włączać i wyłączać wybrane funkcje.

php bin/console prestashop:feature-flag list
php bin/console prestashop:feature-flag enable nazwa_flagi
php bin/console prestashop:feature-flag disable nazwa_flagi

To szczególnie przydatne przy testowaniu nowych mechanizmów wprowadzanych w aktualnych wersjach PrestaShop. Najpierw uruchom listę flag, sprawdź ich stan, włącz funkcję na stagingu i przejdź przez najważniejsze scenariusze sprzedażowe. Dopiero potem podejmuj decyzję o produkcji.

Nie włączaj eksperymentalnych funkcji tylko dlatego, że są dostępne. Sprawdź zgodność modułów, motywu, integracji płatniczych, integracji logistycznych i feedów produktowych. W e-commerce nawet mała zmiana w checkoucie, rabatach albo wysyłce może wpływać na zamówienia.

prestashop:schema:update-without-foreign. Porządkuj bazę po zmianach

Ta komenda służy do aktualizacji bazy danych. Brzmi prosto, ale to jedna z tych operacji, które wymagają największej ostrożności. Używaj jej przede wszystkim w kontrolowanych scenariuszach developerskich, po wdrożeniach wymagających zmian w strukturze bazy albo zgodnie z instrukcją konkretnego procesu aktualizacji.

php bin/console prestashop:schema:update-without-foreign

Przed uruchomieniem wykonaj backup bazy i plików. Po uruchomieniu sprawdź logi, panel administracyjny, stronę główną, kategorie, produkty, koszyk i finalizację zamówienia. Jeśli masz sklep z dużą liczbą zamówień, produktów i integracji, test na kopii produkcji jest obowiązkowy.

Porada: nigdy nie łącz kilku ryzykownych zmian w jednym kroku. Osobno aktualizuj moduły, osobno strukturę bazy, osobno motyw i osobno cache. Gdy coś pójdzie nie tak, szybciej znajdziesz źródło problemu.

prestashop:translation:export-module. Przygotuj tłumaczenia modułu

Jeśli tworzysz moduły, wdrażasz sklep w kilku językach albo przenosisz tłumaczenia między środowiskami, eksport tłumaczeń z poziomu CLI potrafi zaoszczędzić sporo ręcznej pracy. Komenda generuje paczkę z plikami XLF dla wskazanego modułu i wybranych języków.

php bin/console prestashop:translation:export-module ps_banner
php bin/console prestashop:translation:export-module ps_banner pl-PL
php bin/console prestashop:translation:export-module mymodule --auto-install

Dzięki temu możesz wersjonować tłumaczenia razem z kodem modułu, przygotować paczkę do dystrybucji albo szybciej odtworzyć tłumaczenia na innym środowisku. To szczególnie wygodne w pracy agencyjnej, gdy jeden moduł wraca w wielu projektach.

Po eksporcie sprawdź strukturę plików i nazwy domen tłumaczeń. Błędy w tłumaczeniach są często mniej widoczne niż błąd PHP, ale dla klienta potrafią wyglądać równie źle: komunikat koszyka, niejasny tekst przy płatności albo niedokończony e-mail transakcyjny obniża zaufanie do sklepu.

prestashop:mail:generate. Generuj szablony maili

W e-commerce e-maile transakcyjne są częścią doświadczenia zakupowego. Potwierdzenie zamówienia, wiadomość o płatności, wysyłce czy zmianie statusu muszą działać spójnie z marką i językiem sklepu. Komenda prestashop:mail:generate pomaga generować szablony maili dla określonego motywu i języka.

php bin/console prestashop:mail:generate classic pl-PL
php bin/console prestashop:mail:generate hummingbird pl-PL --overwrite

Opcję --overwrite traktuj ostrożnie, bo nadpisuje istniejące szablony. Przed użyciem wykonaj kopię katalogu maili, a po wygenerowaniu wiadomości przetestuj przynajmniej najważniejsze scenariusze: nowe zamówienie, płatność, anulowanie, zwrot, kontakt z obsługą i odzyskiwanie hasła.

Ta komenda jest dobrym elementem checklisty po zmianie motywu albo przygotowaniu wersji językowej. Lepiej wykryć brakujący tekst w mailu na stagingu niż po pierwszej serii zamówień z kampanii reklamowej.

Jak zmienić komendy CLI w proces, który oszczędza czas

Pojedyncza komenda pomaga, ale największy efekt daje proces. Przygotuj prostą checklistę wdrożeniową i uruchamiaj ją w tej samej kolejności. Przykład dla zmian w module może wyglądać tak: backup, tryb maintenance lub okno serwisowe, wdrożenie plików, aktualizacja modułu, czyszczenie cache, przebudowa indeksu, test koszyka i wyłączenie debugowania.

# przykład ogólnej sekwencji po wdrożeniu
php bin/console prestashop:module upgrade nazwa_modulu
php bin/console cache:clear
php bin/console prestashop:search:index --full
php bin/console prestashop:debug off

Nie każdą komendę musisz uruchamiać po każdym wdrożeniu. Jeżeli zmieniasz tylko tekst w szablonie, pełna przebudowa indeksu produktów nie ma sensu. Jeżeli importujesz katalog produktów, indeks wyszukiwarki będzie dużo ważniejszy niż generowanie maili. Dopasuj zestaw poleceń do rodzaju zmiany.

  • Po imporcie produktów: przebuduj indeks wyszukiwarki i sprawdź losowe produkty.
  • Po zmianie motywu: przełącz motyw, wyczyść cache, sprawdź koszyk, checkout i mobile.
  • Po problemie z modułem: włącz debug, sprawdź logi, wyłącz lub zresetuj podejrzany moduł.
  • Po zmianie grafik: regeneruj miniatury i sprawdź listingi oraz kartę produktu.
  • Po aktualizacji sklepu: wykonaj backup, testuj na stagingu i sprawdź zgodność modułów.

Najważniejsze jest bezpieczeństwo. Używaj CLI tam, gdzie daje powtarzalność, szybkość i mniejsze ryzyko błędu ludzkiego. Testuj na stagingu, rób backupy, dokumentuj sekwencje poleceń i nie uruchamiaj ciężkich operacji w godzinach największej sprzedaży.

Jeśli chcesz połączyć wygodę pracy z terminalem z infrastrukturą przygotowaną pod sklep, wybierz odpowiedni, dopasowany pod Twoje potrzeby hosting. Komendy CLI są wygodne, ale sklep nadal potrzebuje wydajnego środowiska: szybkich dysków, dobrze ustawionego cache, Redis, stabilnego PHP, backupów i dostępu SSH.

FAQ – praca z CLI w PrestaShop

Nie. Developerzy korzystają z CLI najczęściej, ale wiele komend pomaga także administratorom technicznym sklepu. Warto jednak znać podstawy SSH, strukturę sklepu i skutki uruchamianych poleceń.

Tak, ale ostrożnie. Bezpieczne komendy diagnostyczne, takie jak list lub –help, możesz uruchamiać bez większego ryzyka. Komendy zmieniające moduły, bazę, motyw, cache albo indeksy najlepiej testować wcześniej na stagingu.

Czasem pomoże, ale nie zawsze. Biały ekran może wynikać z błędu modułu, motywu, override, wersji PHP lub uszkodzonych plików. Najpierw włącz debug, sprawdź logi i dopiero wtedy dobierz właściwe działanie.

Najczęściej automatyzuje się zadania powtarzalne, na przykład przebudowę indeksu wyszukiwarki po cyklicznych importach lub regenerację elementów wykonywaną poza godzinami szczytu. Nie dodawaj do crona ciężkich operacji bez testów wydajnościowych.

Tak. Dostęp SSH, właściwe wersje PHP, szybkie dyski, cache, Redis i backupy ułatwiają bezpieczną pracę z PrestaShop. Przy sklepie internetowym infrastruktura wpływa zarówno na wygodę administracji, jak i stabilność sprzedaży.

cli-w-prestashop-10-komend-ktore-przyspiesza-twoja-prace
>
Kasia Bielawska

Dodaj komentarz

Twój adres e-mail nie będzie opublikowany.

Szukasz dalej?