Press "Enter" to skip to content

PrestaShop – błąd zapisu produktu: Nie można zaktualizować ustawień

Admin 0

Objawy problemu

Podczas migracji z PrestaShop 1.5.6.1 do najnowszej obecnie wersji 1.7.8.10 nasz zespól natrafił na problem z zapisaniem co po niektórych produktów. Objawia się wyświetleniem chmórki: „Nie można zaktualizować ustawień”

Następnie przyciski zapisu są blokowane i nie działa podgląd produktu (link do karty produktu) od strony klienta sklepu…

Sklep był zapełniany danymi poprzez sposób zaprezentowany w tym artykule:

Aktualizacja PrestaShop do 1.7 – dane starego sklepu w zupełnie czystej instalacji PS17 [UPDATE]

Niestety analiza logów nic nie dała. Także włączenie trybu debugowania czy analiza samych błędów na serwerze.

Sprawdź jak łatwo możesz włączyć zapisywanie błędów Apache’a poprzez parę wpisów w .htaccess: https://linuxporady.pl/szybkie-pokazywanie-bledow-php-przez-wpis-w-htaccess/

Po prostu pojawia się enigmatyczny komunikat i nie wiadomo co go powoduje..

Dziwny sposób na naprawę

Co ciekawe w wyniku przeprowadzonych testów – po przełączeniu języka admina na angielski:

Zapis problematycznego produktu już… działa?

Natomiast po powrocie do języka polskiego i ponownym zapisie – zapis jest już naprawiony…. 🙂

No OK. Jeden produkt można tak poprawić. Jednak co jeśli sklep posiada kilka tys potencjalnie niemożliwych do zapisu produtów… ? Przenież nie będziemy każdego zapisywać z osobna?

Skuteczna naprawa

Po analizie zapisu do bazy danych MySQL udało znaleźć się przyczynę problemu. Była to kolumna: id_category_default w tabelach: ps_product oraz ps_product_shop:

Sklep jak napisano na początku był podnoszony z wersji 1.5 do 1.7. Spowodowało to odmienny sposób przypisania do kategorii „Strona głowna” czy też „Home„. W tamtych wersjach byla to kategoria o ID=1 w późniejszych już ID=2 (której to nadrzędna kategoria dopiero była ta o ID=1).

Wystarczy zatem wykonać nieskomplikowane zapytanie w PhpMyAdmin:

UPDATE `ps_product_shop` SET `id_category_default` = 2 WHERE `id_category_default` = 1;
UPDATE `ps_product` SET `id_category_default` = 2 WHERE `id_category_default` = 1;

Oczywiście wykonaj uprzednio kopię bezpieczeństwa bazy danych i dopiero sprawdź czy ten problem udało się tak rozwiązać!

Inne przyczyny wystąpienia tego błędu

W tym filmie

Autor przytacza inne przyczyny wystąpienia tego błędu. Są to:

  • Pusta nazwa produktu podczas zapisu (tutaj nie miało to miejsca)
  • Zbyt obszerny opis produktu (przekroczenie limitu)

Sprawdź, może to też okaże się pomocne.

 

grafika:wallpapercave.com

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

Zobacz także !
Nie masz dostępu do strony z modułami (FATAL ERROR) -…