PrestaShop offline oznacza trzy różne sytuacje: pracę lokalną na komputerze, świadome wyłączenie sklepu dla klientów i awarię, której nikt nie planował. Każda z nich wymaga innych działań, innych uprawnień i innych zabezpieczeń. Zanim cokolwiek klikniesz w panelu, ustal, w którym z trzech wariantów jesteś — to zajmuje minutę i oszczędza najwięcej problemów. Poniżej część organizacyjna: najczęstsze błędy, lista kontrolna i pytania, które wracają w każdym wdrożeniu.
Hasło „prestashop offline” opisuje trzy różne sytuacje. Rozpoznanie własnej zajmuje minutę i oszczędza najwięcej czasu.
Najczęstszy błąd to mylenie konserwacji ze środowiskiem lokalnym. Ktoś włącza tryb konserwacji, żeby „przetestować szablon”, zapomina o nim na dwa tygodnie i dziwi się spadkowi ruchu z Google. Tryb konserwacji oznacza, że serwer zwraca kod 503 — zgodnie z semantyką HTTP to stan tymczasowy, ale utrzymywany tygodniami przestaje być neutralny dla widoczności w wyszukiwarce (RFC 9110 — znaczenie kodu 503). Środowisko lokalne nie generuje ruchu publicznego, więc nie ma czego odkręcać.
Zanim włączysz konserwację, ustal kto ma dostęp do podglądu (pole adresów IP konserwacji), czy trwają kampanie reklamowe kierujące na sklep i kto poinformuje klientów B2B. Adres IP z domu zmienia się przy restarcie routera — wpisana raz whitelista przestaje działać i tracisz podgląd frontu. Jeśli szukasz miejsca na całość prac — wdrożenie, przenosiny, utrzymanie — zacznij od przeglądu usług PrestaShop w DropDigital.
| Jeśli chcesz... | Wariant | Pierwszy krok |
|---|---|---|
| popracować nad szablonem, modułem albo wersją PHP bez ryzyka dla produkcji | A — środowisko lokalne | postawić stack lokalnie i sklonować bazę (sekcje o instalacji i klonie) |
| ukryć sklep przed klientami na czas zmian w cenniku albo w wysyłce | B — konserwacja lub tryb katalogowy | Parametry zaawansowane > Wydajność (konserwacja) lub Parametry sklepu > Ustawienia produktu (katalogowy) |
| klienci piszą, że sklep nie działa, a ty nic nie zmieniałeś | C — awaria | logi serwera WWW, logi PHP, katalog var/logs — dopiero potem panel |
Instalacja lokalna to trzy decyzje podjęte przed pierwszym kliknięciem: stack, wersja PHP i baza.
Kroki: pobierz paczkę, rozpakuj do katalogu projektu, wejdź w przeglądarce na adres vhosta. W instalatorze podaj host 127.0.0.1, port 3306, nazwę bazy, użytkownika i hasło, zostaw prefiks ps_. Konto administratora ustaw inne niż na produkcji.
Gdy instalator zwróci błąd połączenia, otwórz app/config/parameters.php. Sprawdzasz klucze database_host, database_port, database_name, database_user, database_password, database_prefix. Najczęstsze pomyłki: wpisanie mysql zamiast 127.0.0.1 poza Dockerem i odwrotnie — w Dockerze hostem jest nazwa usługi z docker-compose.yml, nie localhost — oraz pominięty niestandardowy port.
Zwiąż usługi do 127.0.0.1, żeby środowisko nie było widoczne w sieci lokalnej. W Dockerze to zapis 127.0.0.1:8080:80 w sekcji ports i brak publikacji portu MySQL na 0.0.0.0. Kopia bazy produkcyjnej na laptopie zawiera dane osobowe klientów — MySQL wystawiony na firmowe Wi-Fi to realny wyciek. Do debugowania użyj trybu debug w Parametry zaawansowane > Wydajność.
Czego instalacja lokalna nie sprawdzi: wydajności hostingu (NVMe, OPcache, liczba procesów PHP-FPM, czas odpowiedzi), konfiguracji SMTP (mail z localhosta nie wyjdzie — podstaw Mailpit albo MailHog) ani integracji płatniczych i kurierskich, bo potrzebują publicznego adresu dla webhooków. Dotyczy to również integracji InPost w PrestaShop 9, gdzie statusy przesyłek wracają na publiczny URL.
Kolejność ma znaczenie: baza, pliki, parametry, adresy URL, cache. Odwrotna kolejność kończy się błędem 500 przy pierwszym wejściu na front.
mysqldump --single-transaction --quick --default-character-set=utf8mb4 -u user -p nazwa_bazy > produkcja.sql. Opcja --single-transaction nie blokuje tabel InnoDB, więc sklep działa dalej.rsync -a --exclude 'var/cache' --exclude 'var/logs' --exclude 'img/tmp' --exclude '.git' produkcja/ kopia/. Cache i logi z produkcji to śmieci, które potrafią nadpisać świeżo wygenerowane pliki.mysql -u root -p kopia_lokalna < produkcja.sql. Przy dumpach powyżej 100 MB phpMyAdmin się wykłada.cookie_key i cookie_iv. Bez tego ciasteczka sesji z produkcji potrafią zalogować do kopii, a kopii — do produkcji.ps_configuration klucze PS_SHOP_DOMAIN i PS_SHOP_DOMAIN_SSL, w ps_shop_url kolumny domain, domain_ssl, physical_uri. W multi-shopie to osobny wiersz dla każdego sklepu.ps_configuration oraz ps_module.var/cache, włącznie z var/cache/dev i var/cache/prod.Stary adres najczęściej zostaje w treściach CMS (ps_cms_lang), opisach produktów i kategorii (ps_product_lang, ps_category_lang), szablonach maili w katalogu mails/, blokach linków w modułach i feedach XML. Przejrzyj je przed testami, bo literówka w linku wygląda potem jak błąd modułu. Jeśli kopia ma służyć do zmian w kodzie, pracuj na nadpisywaniu kodu bez modyfikowania rdzenia — łatwiej przenieść takie zmiany na produkcję.
Kopia lokalna to pełna baza produkcyjna: prawdziwe zamówienia, prawdziwe adresy e-mail, prawdziwe klucze API. Dopóki nie odetniesz kilku rzeczy, pierwsze uruchomienie działa na żywym organizmie, nie na teście. Oto lista, którą przechodzisz, zanim klikniesz „Zapisz”.
mail() PHP. W Zaawansowane → E-mail wyłącz wysyłkę albo — lepiej — przekieruj SMTP na lokalny serwer testowy (MailHog, Mailpit, port 1025). Widzisz wtedy każdy mail, a żaden nie leci do klienta.Tryb konserwacji to jedyny wariant offline, który sam włączasz i sam wyłączasz. Warto zrobić to tak, żeby klient wiedział, co się dzieje, a wyszukiwarka nie uznała sklepu za zamknięty na stałe.
Gdzie to jest. W PrestaShop 1.7 i 8: Ustawienia sklepu → Ogólne → sekcja Konserwacja. W 1.6 nazwa i położenie zakładki są inne — jeśli nie widzisz sekcji w Ogólnych, przejrzyj zakładki Preferencji i szukaj po słowie „Konserwacja”, a nie po ścieżce z tutoriala.
Lista adresów IP. Pole przyjmuje jeden adres na linię. Swoje IP sprawdzisz w kilka sekund, wpisując w wyszukiwarce „moje IP” albo uruchamiając komendę curl ifconfig.me. Bez tego wpisu stronę serwisową zobaczysz także Ty — back office działa, front nie. Uwaga na łącza ze zmiennym IP: po restarcie routera adres się zmienia i tracisz dostęp do frontu, a przy dłuższych pracach wygodniej pracować przez VPN ze stałym adresem.
Kod odpowiedzi. Front powinien zwracać 503 Service Unavailable z nagłówkiem Retry-After, który mówi robotom, kiedy wrócić (definicja w RFC 9110). Sprawdź to jednym poleceniem: curl -I https://twojsklep.pl — w pierwszej linii masz kod.
| Kod odpowiedzi | Co komunikuje | Kiedy ma sens |
|---|---|---|
| 503 + Retry-After | Sklep tymczasowo niedostępny, wróci o wskazanym czasie | Planowana konserwacja |
| 200 | Strona działa normalnie | Nigdy w trybie offline — treść o przerwie może zostać zaindeksowana |
| 404 | Nie ma tu nic na stałe | Usunięta strona, nie przerwa techniczna |
| 302 | Przekierowanie | Zmiana adresu URL, nie wyłączenie sklepu |
Strona serwisowa. Domyślny szablon (themes/twoj-motyw/maintenance.tpl) warto podmienić na własny: powód przerwy, data powrotu, telefon i e-mail. Klient, który widzi tylko logo i „przerwa techniczna”, idzie do konkurencji, a nie czeka.
Czego nie robić. Nie blokuj całego serwisu w robots.txt i nie wyłączaj sitemapy. Wpis Disallow: / utrudnia robotowi odczytanie informacji o 503 i potrafi utrzymać się w indeksie długo po zakończeniu prac. Dłuższe okno serwisowe zaplanuj jak wdrożenie, z listą zadań i godziną powrotu — przykład: InPost i PrestaShop 9: organizacja wdrożenia bez przestojów.
Tryb katalogowy odpowiada na pytanie: co zrobić, jeśli sklep ma zostać online, ale nie może przyjmować zamówień? Front działa, treści i pozycje SEO zostają, znika koszyk i przycisk zamówienia.
Gdzie to włączyć. Ustawienia sklepu → Ustawienia produktów → Tryb katalogowy. Do wyboru: Nie, Tak dla gości (zalogowani klienci nadal kupują) i Tak dla wszystkich. Obok jest opcja ukrycia cen — możesz zostawić strony produktów bez cen, ale z opisami.
Różnica wobec konserwacji. Konserwacja odcina front i zwraca 503. Tryb katalogowy oddaje zwykłe 200, więc opisy, zdjęcia, kategorie i linki nadal pracują na SEO. Tracisz sprzedaż, nie pozycje.
| Element | Tryb konserwacji | Tryb katalogowy |
|---|---|---|
| Widoczność frontu | Ukryty dla wszystkich poza listą IP | Pełna, dla wszystkich |
| Kod odpowiedzi | 503 | 200 |
| Koszyk i zamówienie | Brak | Brak |
| Ceny | Brak (cała strona zastąpiona) | Zależą od opcji ukrycia cen |
| Powrót do sprzedaży | Wyłączenie trybu konserwacji | Przełączenie na „Nie” i czyszczenie cache |
Kiedy ma sens. Przenosiny magazynu, przerwa w dostawach, zmiana systemu fakturowania, sprzedaż wyłącznie zapytaniowa w B2B. W B2B to często stan stały, a nie awaryjny.
Jak wrócić bez utraty pozycji. Ustaw „Nie”, wyczyść cache (Zaawansowane → Wydajność → Wyczyść cache), a potem sprawdź w trybie incognito kartę produktu, kategorię i stronę główną — koszyk bywa w trzech miejscach motywu. Sprawdź też produkty z wariantami, bo tam ceny wracają najpóźniej. Adresy URL się nie zmieniają, więc indeksem nie musisz się zajmować.
Największe ryzyko. Klient, który nie widzi ceny, nie zostawia zapytania — wychodzi. Jeśli na karcie produktu nie ma formularza kontaktowego, a w nagłówku telefonu, tryb katalogowy zamienia ruch w zero leadów. Przed włączeniem sprawdź, czy zapytanie dochodzi i czy ktoś je czyta. Zweryfikuj też dane strukturalne produktów: jeśli nadal zgłaszają ceny i dostępność, lepiej je na czas przerwy wyłączyć, bo rozjazd między znacznikami a stroną szkodzi (zakres na dane strukturalne obsługiwane przez Google).
Zanim zaczniesz klikać w panelu, sprawdź, co odpowiada serwer. Jedno polecenie: curl -I https://twojadomena.pl. Kod odpowiedzi zawęża obszar szukania do jednej z czterech przyczyn.
| Objaw | Prawdopodobna przyczyna | Pierwszy krok |
|---|---|---|
| 500 | błąd PHP: moduł, override, brakująca funkcja | log błędów PHP + var/logs |
| 503 | tryb konserwacji albo przeciążenie PHP-FPM | sprawdź, czy konserwacja jest włączona celowo |
| 200 i biały ekran | fatal error przy wyłączonym wyświetlaniu błędów | logi, nie włączanie display_errors |
| „Nie można połączyć się z witryną” | wygasły certyfikat SSL albo domena | data ważności SSL, WHOIS domeny |
Logi PrestaShop leżą w katalogu var/logs (wersje 1.7, 8, 9); starsze wersje trzymały je w log/. To logi aplikacji, ale przy 500 zwykle ważniejszy jest log PHP i serwera WWW: /var/log/php*-fpm.log, /var/log/nginx/error.log lub error_log Apache. Szukaj daty i godziny zgodnej z momentem awarii, nie nazwy sklepu.
Zasoby wyczerpują się po cichu. Sprawdź df -h — pełny dysk to najczęstsza przyczyna 500 połączonego z brakiem możliwości zapisu. Winowajcy: var/cache, var/logs, katalog tymczasowy. Dalej: limit procesów PHP-FPM (pm.max_children, komunikat max children reached w logu puli) oraz limit połączeń MySQL (błąd 1040, Too many connections). Objawy są podobne, leczenie inne.
Jeśli 500 pojawia się tylko na jednej podstronie, podejrzewaj moduł lub override — zwłaszcza gdy ktoś niedawno wgrywał zmiany. Warto wtedy przejrzeć sposób nadpisywania kodu: PrestaShop override: jak nadpisywać kod bez błędów.
Tryb debug (_PS_MODE_DEV_ w config/defines.inc.php) włączaj na 5–10 minut, na zamkniętym dostępie (hasło na katalogu, filtr po IP), i wyłączaj od razu. Publicznie widoczny stos błędów pokazuje ścieżki plików i wersje bibliotek — to gotowa instrukcja dla atakującego.
| Objaw | Prawdopodobna przyczyna | Pierwszy krok |
|---|---|---|
| 500 | błąd PHP: moduł, override, brakująca funkcja | log błędów PHP + var/logs |
| 503 | tryb konserwacji albo przeciążenie PHP-FPM | sprawdź, czy konserwacja jest włączona celowo |
| 200 i biały ekran | fatal error przy wyłączonym wyświetlaniu błędów | logi zamiast display_errors |
| Brak połączenia w przeglądarce | wygasły certyfikat SSL albo domena | data ważności SSL, WHOIS domeny |
Kod 503 oznacza „tymczasowo niedostępne”. Dla wyszukiwarki to sygnał, że adres żyje i ma wrócić — dokument RFC 9110 definiuje 503 jako stan przejściowy, w odróżnieniu od 404, który mówi „tego już nie ma”. Trzecia możliwość jest najgorsza: przekierowanie całego sklepu na stronę główną. Google widzi wtedy serię adresów, które nie odpowiadają na zapytanie użytkownika, i po dłuższym czasie zaczyna traktować je jak usunięte. Tryb konserwacji w PrestaShop domyślnie zwraca 503 — sprawdź to jednym poleceniem curl -I https://twojadomena.pl, zanim uznasz, że wszystko jest w porządku. Zdarza się konfiguracja, w której strona serwisowa zwraca 200, a to już zupełnie inny przekaz.
Nagłówki mają znaczenie. Retry-After mówi robotowi, kiedy wrócić — wartość 86400 (doba) przy krótkiej przerwie jest bezpieczna. Cache-Control ustaw tak, żeby przeglądarki i CDN nie zapamiętały strony serwisowej na tygodnie. I najważniejsze: nie dokładaj do niej na sztywno noindex. Jeśli zapomnisz to zdjąć po powrocie sklepu do sieci, wypadniesz z indeksu na własne życzenie. Sam 503 wystarcza, żeby robot nie indeksował treści.
Jak długo można utrzymywać 503? Nie ma magicznej liczby dni, ale im dłużej, tym większe ryzyko wypadania URL-i z indeksu i tym szybciej konkurencja przejmuje frazy transakcyjne. Kilka dni to niski koszt. Przerwa liczona w tygodniach wymaga już kontaktu z klientami i planu powrotu.
Lista kontrolna przed zdjęciem trybu konserwacji:
Po powrocie online: sprawdź kluczowe URL-e, wyślij sitemapę ponownie, przejrzyj statystyki indeksowania w Search Console po 24, 72 godzinach i tygodniu. Dopiero wtedy widać, czy przerwa coś kosztowała.
Widełki poniżej to czas realnej pracy, nie czas „od zgłoszenia do zamknięcia ticketa”. Zakładają sklep na sprawdzonym hostingu i osobę, która wie, gdzie szukać.
| Zadanie | Czas pracy | Kiedy zlecać |
|---|---|---|
| Postawienie lokalnego środowiska zgodnego z wersją sklepu | 3–5 h | gdy brakuje dostępu do serwera |
| Bezpieczny klon produkcji z podmianą URL i wyłączeniem integracji | 4–8 h | przed gruntowną zmianą na żywym sklepie |
| Tryb konserwacji z własną stroną serwisową i dostępem po IP | 2–4 h | przed migracją lub wdrożeniem |
| Diagnoza i naprawa po awarii | zwykle 2–8 h | gdy sklep stoi dłużej niż godzinę |
Klon produkcji jest droższy od środowiska lokalnego i to normalne. Trzeba zsynchronizować bazę i pliki, wyłączyć płatności, wysyłkę maili, integracje kurierskie i crony, podmienić URL we wszystkich tabelach konfiguracyjnych i sprawdzić, czy nie ma zahardkodowanych adresów w modułach i szablonie. Pominięcie któregokolwiek kroku kończy się wysyłaniem prawdziwych maili z klonu albo podwójnym importem zamówień.
Diagnoza po awarii wyceniana jest po diagnozie, nie przed. Nie da się uczciwie powiedzieć „to będzie 3 godziny”, jeśli nie wiadomo, czy padł moduł, czy wyczerpał się dysk, czy ktoś nadpisał plik rdzenia. Przyczyna „brak miejsca na dysku i logi rosnące od miesięcy” to godzina pracy z czyszczeniem i zabezpieczeniem auto-rotacji. Przyczyna „kilka modułów konkuruje o ten sam hook po aktualizacji” to spokojnie 6–8 godzin.
Model wyceny jest prosty: stawka godzinowa razy liczba godzin. Bez widełek z sufitu, bez „od X zł, zobaczymy”. Zakres ustalamy przed startem i trzymamy się go — rozszerzenie zakresu to nowa decyzja, nie automatyczny dopisek do faktury.
Kiedy zlecać zewnętrznie: gdy sklep pracuje w sezonie i każda godzina przestoju to utracone zamówienia; gdy nie masz dostępu do serwera (tylko hosting „przekaże zgłoszenie”), bo połowa diagnozy to logi; gdy wolisz rozmawiać bezpośrednio z osobą, która pisze kod, a nie przez pośredników i handlowców. Punkt startowy znajdziesz tutaj: wdrożenia i utrzymanie PrestaShop.
| Zadanie | Czas pracy | Kiedy zlecać |
|---|---|---|
| Postawienie lokalnego środowiska zgodnego z wersją sklepu | 3–5 h | gdy brakuje dostępu do serwera |
| Bezpieczny klon produkcji z podmianą URL i wyłączeniem integracji | 4–8 h | przed gruntowną zmianą na żywym sklepie |
| Tryb konserwacji z własną stroną serwisową i dostępem po IP | 2–4 h | przed migracją lub wdrożeniem |
| Diagnoza i naprawa po awarii | zwykle 2–8 h | gdy sklep stoi dłużej niż godzinę |
Mylenie trybu konserwacji z pracą lokalną. Ktoś chce przetestować zmiany na komputerze, a kończy wyłączając sklep dla wszystkich klientów na produkcji.
Jak wykryć: Sprawdź pasek adresu — pracujesz na domenie sklepu czy na 127.0.0.1 / localhost. Zajrzyj też do panelu w Preferencje → Konserwacja i zobacz, czy wyłączenie sklepu jest włączone.
Jak naprawić: Praca lokalna to osobna kopia na Twoim komputerze, produkcja zostaje czynna. Tryb konserwacji to świadoma decyzja o wyłączeniu sklepu — serwer zwraca wtedy klientom kod 503 i informację o przerwie technicznej, zgodnie z opisem w RFC 9110.
Pierwsze testowe zamówienie na kopii wychodzi prawdziwym mailem do klienta z bazy.
Jak wykryć: Zrób testowe zamówienie na kopii i sprawdź, czy gdziekolwiek pojawiło się potwierdzenie. Zajrzyj do Zaawansowane → E-mail i do kolejki maili wychodzących.
Jak naprawić: Wyłącz wysyłkę w PrestaShop albo przekieruj SMTP na lokalny serwer testowy (MailHog, Mailpit) i dopiero potem testuj zamówienia. Kolejność ma znaczenie: najpierw odcięcie maili, potem testy.
Moduł płatności na kopii działa na produkcyjnych kluczach — z lokalnego środowiska da się zrealizować realną transakcję i obciążyć klienta.
Jak wykryć: Otwórz konfigurację modułu płatności i sprawdź, czy wpisane są klucze produkcyjne, a tryb testowy lub piaskownica jest wyłączony.
Jak naprawić: Dezaktywuj moduł na kopii albo przełącz go na dane sandboxowe dostawcy. Klucze produkcyjne nie powinny trafić na żadne środowisko poza produkcją.
Generowanie listów przewozowych kurierów (InPost, DPD, DHL) z lokalnej kopii sklepu.
Jak wykryć: Sprawdź, czy moduł kurierski ma aktywne konto i czy w trakcie testów zamówienia ktoś nie kliknął utworzenia przesyłki.
Jak naprawić: Wyłącz moduł kurierski na kopii i testuj integrację na koncie sandboxowym operatora. Kontekst wdrożenia opisujemy w materiale o InPost w PrestaShop.
Search-replace w bazie bez obsługi danych serializowanych — ustawienia modułów przestają się ładować.
Jak wykryć: Po podmianie domeny pojawiają się błędy unserialize, moduły tracą konfigurację, a część stron przekierowuje na adres produkcyjny.
Jak naprawić: Użyj narzędzia, które rozumie serializację, i po podmianie sprawdź tabele ps_configuration oraz ps_shop_url. Zmień też cookie_key i dane bazy w parameters.php, żeby oddzielić ciasteczka produkcji od kopii.
Crony, webhooki i feedy dalej działają po uruchomieniu kopii — dane z lokalnego środowiska trafiają na zewnątrz jako prawdziwe.
Jak wykryć: Sprawdź zadania cron, konfigurację feedów i integracji: piksele, Merchant Center, porównywarki, integracje społecznościowe.
Jak naprawić: Odłącz je na czas testów i włącz dopiero po ustaleniu, co ma iść na zewnątrz. Kontekst integracji z Facebookiem opisaliśmy osobno.
PrestaShop offline to nie jedna sytuacja, ale trzy: praca lokalna, świadoma konserwacja i awaria. Najwięcej szkód robi nie brak wiedzy technicznej, a brak rozdzielenia tych wariantów — efektem bywają maile do klientów, realne transakcje i listy przewozowe wygenerowane z kopii. Ustal wariant, przejdź listę kontrolną i dopiero wtedy testuj. Reszta to już konfiguracja, nie organizacja.
Tryb konserwacji wyłącza sklep dla klientów — serwer zwraca im kod 503 i informację o przerwie technicznej, co opisuje RFC 9110. Praca lokalna to osobna instalacja na Twoim komputerze; produkcja zostaje czynna i przyjmuje zamówienia. Mylenie tych dwóch rzeczy to najczęstszy błąd organizacyjny w projektach PrestaShop.
Zacznij od kodu odpowiedzi HTTP i od tego, czy ktokolwiek coś wdrażał. 503 to zwykle decyzja: konserwacja albo włączony tryb katalogowy. 500 lub 502 to najczęściej awaria po stronie serwera, kodu albo bazy. Jeśli nikt nic nie zmieniał, sięgnij po logi serwera i var/logs, a nie po reinstalację.
Środowisko związane z 127.0.0.1 nie jest dostępne z internetu, więc roboty wyszukiwarek go nie zobaczą. Inaczej jest, gdy wystawisz kopię na publiczny adres bez ochrony — wtedy staje się zwykłą, indeksowalną witryną z duplikatem treści. W takim wypadku zabezpiecz ją hasłem i zablokuj indeksację.
Tak, ale wyłącznie na kluczach piaskownicy dostawcy. Produkcyjne klucze płatności na kopii oznaczają, że z lokalnego środowiska da się zrealizować prawdziwą transakcję i obciążyć klienta. Bezpieczniej jest dezaktywować moduł i przetestować samą logikę koszyka bez realnego obciążenia.
Kopia bazy zawiera pełne dane osobowe: adresy, e-maile, historię zamówień. Traktuj ją tak samo jak produkcję — trzymaj na zaszyfrowanym dysku, ogranicz dostęp do osób faktycznie pracujących nad sklepem i usuń kopię po zakończeniu prac.
Do sprawdzenia logiki sklepu, szablonu i konfiguracji — tak. Czas przygotowania zależy od rozmiaru bazy i liczby integracji do odłączenia, więc nie ma jednej liczby do podania bez poznania sklepu. Zmiany w kodzie rób przez override, nie przez edycję rdzenia, bo inaczej aktualizacja PrestaShop je nadpisze.
Lokalna kopia nie powie Ci nic o wydajności hostingu, konfiguracji SMTP i dostarczalności maili, realnych integracjach kurierskich ani o działaniu CDN. Te elementy trzeba sprawdzić na środowisku zbliżonym do produkcji, najlepiej w oknie o niskim ruchu.
Jeśli chcesz przenieść sklep na środowisko lokalne albo zaplanować prace bez przestoju na produkcji, napisz do nas — powiemy wprost, co da się zrobić, a czego lepiej nie ruszać.