Zawartość artykułu
Jak się błąd objawia?
Po instalacji płatnego szablonu (zobacz jak zainstalować taki szablon) zauważyliśmy, że jest problem z wysyłką wiadomości poprzez formularz kontaktowy:
Błąd może też wystąpić po angielsku, w zależności od przetłumaczenia szablonu:
An error occurred while sending the message.
Inną sytuacją (dość popularną) kiedy może on wystąpić, to aktualizacja systemu np. poprzez dodatek 1-click upgrade.
Problem wydaje się dość enigmatyczny, bo wysyłanie maili działa jak należy. Jak dokładnie to sprawdzić poruszaliśmy to na innym artykule na naszym blogu.
Dopiero użycie domyślnego szablonu PrestaShop potwierdziło, że problem nie tkwi w systemie, a w samym szablonie.
Jeśli także natrafiłeś na taki błąd – poniżej rozwiązanie, które być może okaże się dla Ciebie pomocne:
Rozwiązanie
Przeedytuj plik:
themes/{NAZWA-TWOJEGO-SZABLONU}/contact-form.tpl
i upewnij się, że znajdują się w nim te 2 ukryte pola INPUT:
<input class="hidden" name="url" type="text" value="" /> <input name="contactKey" type="hidden" value="{$contactKey}" />
Jeśli nie ma tam takiego kodu, to go przed wystąpieniem tagu <INPUT> lub <BUTTON> o atrybucie:
type="submit"
Np:
<input class="hidden" name="url" type="text" value="" /> <input name="contactKey" type="hidden" value="{$contactKey}" /> <input type="submit" name="submitMessage" id="submitMessage" value="{l s='Send'}" class="btn btn-default btn-mega" />
Następnie odśwież cache sklepu:
Parametry zaawansowane -> Wydajność -> Wyczyść pamięć podręczną
i asekuracyjnie na tej samej stronie chwilowo włącz:
Wymuszenie kompilacji -> Zapisz (Wyłączając pamięć podręczną),
Następnie przywróć poprzednie ustawienia -> Zapisz.
W naszym przypadku to pomogło.
Powodzenia!
Jak pisałem w innym wpisie nie wysyła formularza ze strony sklepu.
Szukałem w themes/{NAZWA-TWOJEGO-SZABLONU}/contact-form.tpl
Jednak wszystko wygląda inaczej niż w artykule.
{l s=’Send’}
Co z tym zrobić?
Pozdrawiam
Przepraszam – powyższy wpis nie poszedł cały 🙁
Tutaj ten formularz na stronie nie pozwala wysłać fragmentu kodu z pliku tpl.
Po naciśnięciu na klawisz WYŚLIJ wyskakuje biała pusta strona lub za innym razem przesłało malutki fragment tekstu.
{l s=’Send’}
Zgadza się proszę o kontakt najlepiej mailowy. W treści pliku tpl są znaki specjalne dlatego są problemy
Dzięki za pomoc
Miałem ten sam problem i po dodaniu tych dwóch linii działa.
Problem tylko jest taki, że w temacie otrzymanego maila z formularza mam:
[Nazwa sklepu] Wiadomość od [no_sync] – Dlaczego nie wpisuje tutaj np. adresu e-mail?
Dzięki u mnie pomogło 🙂
Pozdrawiam,
Dzięki, działa!
Pozdrawiam.
Pomogło, dziękuję 🙂
Witam Temat pomógł bardzo , pytanie nr 2 nie działa IMAP jak to naprawić chyba próbowałem już wszystkiego
Zależy gdzie masz hosting. Jeśli to nazwapl, może być to trudne do wykonania. Gmail też wymaga dodatkowej autoryzacji i ciężko powiedzieć czy zadziała to w presta shop. A co powiedział administrator Twojego serwera w tej sprawie?
Faktycznie, u mojego Klienta była owa przypadłość
Dziękuje za wpis bardzo mi pomógł.
niestety u mnie zmiana nie pomogła 🙁
@Dorota to może włącz pokazywanie blędów w Twoim sklepie (opisywaliśmy to tutaj: https://pskrk.com/blad-z-logowaniem-do-admina-prestashop-1-6-x-na-serwerze-z-wersja-php-7-2/) i przedstaw jakie błędy się pojawiają podczas wysyłania wiadomości.
Dzięki – dodanie wpisu rozwiązało problem 🙂
[…] PrestaShop 1.6 wystąpił błąd podczas wysyłania wiadomości – problem z wysyłaniem formularza… […]
Witaj,
Niezmiernie się ucieszyłem kiedy znalazłem ten artykuł. Miałem nadzieję że uda mi się rozwiązać problem. Dzięki ww rozwiązaniu udało mi się raz jeden jedyny wysłać poprawnie wiadomość. Niestety tylko raz. Zmodyfikowałem plik z błędem tj. całą formułę
”
”
dodałem przed
Ostatecznie otrzymując dwa guziki do wysyłki jeden z nich wysłał poprawnie wiadomość – raz. Później już tego nie powtórzyłem bo zająłem się usuwaniem drugiego guzika i tak oto nic nie działa.
Jeżeli masz jakiś pomysł pomóż proszę.
Pozdrawiam