- Formularz dla każdego tematu
- Dziewięć typów pól
- Sprawdzanie każdego pola
- Warunki: pokazuj pole tylko wtedy, gdy jest potrzebne
- Bezpieczne pliki
- Kierowanie: każde zgłoszenie do właściwego zespołu
- Potwierdzenie, które zawsze wygląda profesjonalnie
- Zgłoszenia zachowane i eksportowane
- RODO i prywatność
- Ochrona przed spamem
- Grupy klientów, języki i wiele sklepów
- Na telefonie
- 1. Utwórz formularz
- 2. Dodaj pola i ich warunki
- 3. Skieruj zgłoszenie i napisz potwierdzenie
- 4. Śledź zgłoszenia
- 5. Chroń formularz i ustaw prywatność
- Licencja
- Serwis posprzedażowy: właściwe pytania dla każdego powodu
- Zapytania ofertowe B2B
- Temat tylko dla członków
- Jeden formularz dla wielu sklepów
- Zbieranie dokumentów
- Do czego służy „dynamiczny” formularz kontaktowy w PrestaShop?
- Czy naprawdę można stworzyć inny formularz dla każdego tematu kontaktu?
- Jakie typy pól niestandardowych można dodać?
- Jak działa logika warunkowa (pola, które pojawiają się lub znikają)?
- Czy niektóre formularze można zarezerwować dla klientów B2B (grupy klientów)?
- Jak moduł pomaga w zgodności z RODO?
- Czy klient otrzymuje automatyczne potwierdzenie po wysłaniu?
- Czy moduł jest chroniony przed spamem (bez CAPTCHA)?
- Jak wdrożyć tę samą konfigurację w wielu sklepach (lub środowiskach)?
- Kompatybilność, wymagania i odinstalowanie: na co zwrócić uwagę?
- Czy każde zgłoszenie może trafić do właściwego zespołu?
- Gdzie są przechowywane zgłoszenia i czy mogę je wyeksportować?
- Co się stanie, gdy moja licencja wygaśnie?
- Strona kontaktu pokazuje prosty formularz zamiast moich formularzy
- Strona kontaktu nie pokazuje nic
- Moje e-maile nie docierają
- Plik zostaje odrzucony
- Klient dowiaduje się, że wysłał zbyt wiele zgłoszeń
- Captcha się nie pojawia
- Zmodyfikowałem nadpisanie z wersji 1.0.0
Dynamiczny formularz kontaktu dla PrestaShop: formularz dla każdego tematu — konfiguracja i przewodnik
Dynamic Contact Form zamienia stronę kontaktu PrestaShop w formularz dla każdego tematu: klient wybiera „Serwis posprzedażowy” lub „Zapytanie ofertowe” i widzi tylko pasujące pytania, z polami, które pojawiają się lub znikają zależnie od jego odpowiedzi. Każde zgłoszenie trafia do właściwego zespołu, jest przechowywane w tabeli, którą możesz filtrować i eksportować, i nadal otwiera rozmowę w natywnej obsłudze klienta.
Ten przewodnik wyjaśnia, jak zainstalować moduł, zbudować pierwszy formularz, kierować zgłoszenia, chronić formularz przed spamem i rozwiązać typowe problemy.
Najważniejsze zalety:
- Formularz dla każdego tematu strony kontaktu, z własnymi polami, odbiorcami i potwierdzeniem
- Dziewięć typów pól (tekst, pole tekstowe, lista, przyciski opcji, kilka pól wyboru, pole wyboru, data, plik, blok informacyjny), z tekstem podpowiedzi, pomocą i sprawdzaniem
- Warunki, które działają: pole pojawia się tylko wtedy, gdy wymaga tego odpowiedź na inne pole, w przeglądarce i na serwerze
- Kierowanie: kopia i ukryta kopia, odbiorca wybrany według odpowiedzi na listę, temat e-maila ze zmiennymi
- Zgłoszenia przechowywane w panelu administracyjnym: filtry, pliki do pobrania, eksport do CSV, automatyczne usuwanie
- Rozmowa w obsłudze klienta jak przy formularzu natywnym i potwierdzenie, które nigdy nie powtarza wiadomości klienta
- Zgoda RODO, ochrona przed spamem (limity, czas wypełnienia, opcjonalny Turnstile lub reCAPTCHA) i bezpieczne pliki
- PrestaShop 1.7.8, 8.0+ i 9.0+; PHP 7.4 minimum; panel administracyjny po francusku, angielsku, hiszpańsku, włosku i polsku
Przegląd
Natywny formularz kontaktowy PrestaShop ma te same pola dla wszystkich tematów. Klient z awarią, klient, który chce wyceny, i klient pytający o dostawę wypełniają ten sam formularz, a Twój zespół odpisuje, by poprosić o numer zamówienia, ilość lub zdjęcie. Z Dynamic Contact Form:
- Każdy temat strony kontaktu (Parametry sklepu > Kontakt > Kontakty) ma własny formularz: pola, których potrzebujesz dla tego rodzaju zgłoszenia.
- Pola podążają za odpowiedziami: numer zamówienia i zdjęcie problemu pojawiają się przy awarii, firma pojawia się, gdy klient prosi o fakturę.
- Zgłoszenie trafia do właściwych osób: adres tematu, kopia i odbiorca wybrany według odpowiedzi na listę.
- Zgłoszenie jest zachowane: rozmowa w obsłudze klienta oraz wiersz w module z odpowiedziami i plikami, gotowy do filtrowania i eksportu.
Moduł nie dodaje do strony nic poza formularzem. Motyw rysuje stronę, moduł rysuje formularz w jej obszarze kontaktu. Dla tematu bez formularza moduł pokazuje prosty formularz (e-mail, wiadomość, załącznik), więc żaden temat nie pozostaje pusty.
Formularz dla każdego tematu, z polami pojawiającymi się wtedy, gdy są potrzebne
Funkcje
Formularz dla każdego tematu
Wszystkie tematy sklepu są dostępne na liście strony kontaktu. Wybierz temat: pojawia się jego formularz, a pod listą krótki opis tematu. Temat, który nie ma formularza, pokazuje prosty formularz; formularz, który wyłączysz, zwraca swój temat prostemu formularzowi.
Inny temat, inny formularz
Dziewięć typów pól
- Tekst (jedna linia) i Tekst (wiele linii), z tekstem podpowiedzi i pomocą pod polem
- Lista rozwijana, Przyciski opcji i Kilka pól wyboru, z odpowiedziami, które wpisujesz (po jednej w wierszu, jeśli je wklejasz)
- Pole wyboru, dla pytania z odpowiedzią tak lub nie
- Data
- Plik: wybierasz akceptowane typy, maksymalny rozmiar i liczbę plików
- Blok informacyjny: tytuł i tekst (dozwolony HTML), który klient czyta, na przykład „Odpowiadamy w ciągu 24 godzin”
Każde pole może być wymagane, ma etykietę, tekst podpowiedzi i pomoc pod polem w każdym języku sklepu oraz klucz (utworzony z etykiety), który nazywa pole w eksporcie CSV i w e-mailach.
Sprawdzanie każdego pola
Pole tekstowe można sprawdzać jako adres e-mail, adres www, numer telefonu, liczbę lub według własnego wyrażenia regularnego (na przykład ^[0-9]{5}$ dla francuskiego kodu pocztowego; pole testowe w edytorze mówi, czy wartość pasuje). Klient widzi komunikat przy polu, w swoim języku, i zachowuje to, co wpisał. Przeglądarka sprawdza formularz przed wysłaniem; serwer sprawdza go ponownie po otrzymaniu.
Warunki: pokazuj pole tylko wtedy, gdy jest potrzebne
Warunek dotyczy innego pola tego samego formularza:
- lista, przyciski opcji lub kilka pól wyboru: odpowiedź jest jedną z (lub nie jest żadną z) tych, które zaznaczysz
- pole wyboru: jest zaznaczone (lub nie jest zaznaczone)
- pole tekstowe: jest równe wartości, nie jest jej równe lub ją zawiera
Ukryte pole nie jest ani wymagane, ani zapisywane. Warunek ma jeden poziom: pole zależne od innego nie może samo być testowane przez trzecie. Przeglądarka i serwer stosują te same reguły.
Bezpieczne pliki
Pliki wysłane ze zgłoszeniem są sprawdzane według zawartości, przechowywane poza publicznym folderem sklepu pod losowymi nazwami i udostępniane Twojemu zespołowi do pobrania (nigdy nie są otwierane w przeglądarce). Są dołączane do e-maila dla zespołu do rozmiaru, który ustalisz; większe pliki zostają w panelu administracyjnym, gdzie zgłoszenie do nich odsyła.
Kierowanie: każde zgłoszenie do właściwego zespołu
- Zgłoszenie trafia na adres tematu (Parametry sklepu > Kontakt > Kontakty)
- Formularz może zawsze dodać kopię i ukrytą kopię
- Trasy wybierają odbiorców według odpowiedzi na listę: „gdy odpowiedź na Powód to Zwrot, wyślij zgłoszenie na adres zwroty@… zamiast na adres tematu” lub „oprócz” adresu tematu
- Temat e-maila akceptuje zmienne:
{firstname},{lastname},{email},{order_reference},{reference},{subject},{shop_name}oraz{field:klucz}dla odpowiedzi na pole
Potwierdzenie, które zawsze wygląda profesjonalnie
Włącz potwierdzenie dla formularza: klient otrzymuje e-mail zaraz po wysłaniu, z tematem i tekstem, które napiszesz w każdym języku (te same zmienne). Nigdy nie powtarza tego, co napisał klient.
Zgłoszenia zachowane i eksportowane
Każde zgłoszenie staje się rozmową w Obsługa klienta > Obsługa klienta, z odpowiedziami zapisanymi w wiadomości i linkiem do zgłoszenia. Jeśli przechowujesz zgłoszenia w panelu administracyjnym, zakładka Zgłoszenia je wyświetla: filtruj według tematu, daty lub e-maila, otwórz zgłoszenie, aby przeczytać odpowiedzi i pobrać pliki, i eksportuj do CSV (jedna kolumna na pole) dla Excela, LibreOffice lub Arkuszy Google. Klient, który odpowiada z Twojego e-maila, kontynuuje tę samą rozmowę.
RODO i prywatność
Każdy formularz może prosić o zgodę z Twoim tekstem (dozwolony HTML, na przykład link do polityki prywatności) lub korzystać ze zgody oficjalnego modułu RODO. Data zgody jest zapisywana ze zgłoszeniem. Zgłoszenia mogą być usuwane automatycznie po określonej liczbie dni, a oficjalny moduł RODO może eksportować lub usuwać zgłoszenia klienta.
Ochrona przed spamem
Limit zgłoszeń na godzinę z jednego adresu i na godzinę z jednego e-maila, najkrótszy czas wypełnienia formularza, limit linków, ukryte pole pułapka i token bezpieczeństwa. Możesz dodać Cloudflare Turnstile lub Google reCAPTCHA z własnymi kluczami. Hook actionWeprestaDcfSubmitBefore pozwala programiście zaakceptować lub odrzucić zgłoszenie.
Grupy klientów, języki i wiele sklepów
Ogranicz formularz do grup klientów (goście niezalogowani, goście, klienci lub Twoje własne grupy): pozostali nie widzą tematu. Każdy tekst istnieje w każdym języku sklepu. W instalacji multi-store każdy sklep ma własny formularz dla każdego tematu. Formularz można zduplikować, wyeksportować do pliku JSON i zaimportować w innym sklepie (jest wtedy wyłączony).
Na telefonie
Formularz podąża za układem Twojego motywu: etykiety są nad polami, klawiatura telefonu pasuje do e-maila, numeru telefonu lub liczby, a komunikaty zostają przy polu.
Ten sam formularz na telefonie
Wymagania
- PrestaShop: 1.7.8, 8.0+ lub 9.0+. PrestaShop 1.7.7 i starsze wersje nie są obsługiwane.
- PHP: 7.4 minimum, z rozszerzeniami
curl,jsonimbstring. Zalecane jest rozszerzeniefileinfo: bez niego sprawdzane jest tylko rozszerzenie pliku, nie jego zawartość. - Motyw: motyw dostarczany z PrestaShop lub motyw potomny, który zachowuje stronę kontaktu motywu nadrzędnego. Diagnostyka mówi, co robi Twój motyw.
- Zalecany HTTPS.
Instalacja
Metoda 1 — z panelu administracyjnego (zalecana)
- Pobierz archiwum ze swojej strefy klienta WePresta
- Przejdź do Moduły > Menedżer modułów
- Kliknij Wgraj moduł i wybierz archiwum ZIP
- Poczekaj na koniec instalacji, kliknij Konfiguruj i aktywuj licencję
Metoda 2 — przez FTP
- Rozpakuj archiwum
- Wgraj folder
wepresta_dynamic_contact_form/do/modules/ - W panelu administracyjnym: Moduły > Menedżer modułów, wyszukaj „Dynamic Contact Form” i kliknij Zainstaluj, a następnie Konfiguruj
Co robi instalacja
- Wyłącza natywny formularz kontaktowy, aby moduł obsługiwał stronę kontaktu; odinstalowanie modułu włącza go ponownie
- Tworzy tabele formularzy i zgłoszeń, folder na pliki poza folderem publicznym oraz pozycję menu
- Rejestruje hooki modułu; nie nadpisuje żadnej klasy sklepu
- Jeśli instalacja się nie powiedzie, to, co utworzyła, jest usuwane
Aktualizacja z wersji 1.0.0
- Twoje formularze i ich pola są zachowane, we wszystkich językach
- Teksty i wyrażenia regularne uszkodzone przez wersję 1.0.0 (na przykład apostrofy poprzedzone ukośnikiem) są naprawiane
- Warunki są konwertowane tak, aby same podążały za odpowiedziami, we wszystkich językach
- Nadpisanie strony kontaktu zainstalowane przez wersję 1.0.0 jest usuwane; jeśli zmodyfikowałeś je ręcznie, moduł je zostawia, a Diagnostyka Cię o tym informuje
- Biblioteki i pliki deweloperskie dostarczone z wersją 1.0.0 (do 150 MB) są usuwane: archiwum zmniejsza się z 28 MB do około 340 KB
- Jeśli CSS i JavaScript motywu są łączone, po aktualizacji wyczyść pamięć podręczną PrestaShop
Zbuduj pierwszy formularz w dziesięć minut
Otwórz Moduły > Menedżer modułów > Dynamic Contact Form > Konfiguruj: strona oferuje Zarządzaj formularzami i Otwórz zgłoszenia, a każda strona modułu ma trzy zakładki: Formularze, Zgłoszenia i Ustawienia.
1. Utwórz formularz
- W zakładce Formularze kliknij Dodaj formularz i wybierz jego temat kontaktu (potrzebne tematy utworzysz w Parametry sklepu > Kontakt > Kontakty).
- Pozostaw włączone Aktywny, wybierz grupy klientów, jeśli temat jest zarezerwowany, i zaznacz Numer zamówienia, jeśli zalogowani klienci mogą wskazać zamówienie, którego dotyczy zgłoszenie.
- Wpisz treść zgody, jeśli formularz potrzebuje pola zgody, a następnie zapisz: pojawi się panel Pola.
Każde pole i jego warunek na pierwszy rzut oka
Tabela pól pokazuje dla każdego z nich typ, klucz, informację o wymaganiu i warunek zapisany jako zdanie: „Widoczne, jeśli „Powód” jest jedną z Awaria, Zwrot”.
2. Dodaj pola i ich warunki
- Kliknij Dodaj pole, wybierz typ, wpisz etykietę (pasek języków w oknie zmienia język), tekst podpowiedzi i pomoc.
- Dla listy, przycisków opcji lub pól wyboru dodaj odpowiedzi jedna po drugiej albo wklej je po jednej w wierszu i kliknij Dodaj te odpowiedzi.
- W Sprawdzanie wybierz rodzaj oczekiwanej wartości (e-mail, adres www, telefon, liczba, własny wzorzec).
- W Warunek wybierz inne pole formularza i odpowiedzi (lub stan pola wyboru), dla których to pole ma się pojawiać.
Edycja pola: typ, teksty, sprawdzanie i warunek
Przykład dla formularza serwisu posprzedażowego: lista Powód (Awaria, Zwrot, Inne); pole Numer zamówienia widoczne, jeśli powód jest jednym z Awaria lub Zwrot; plik Zdjęcie problemu widoczny, jeśli powód to Awaria; pole Potrzebuję faktury, które pokazuje pole Firma.
3. Skieruj zgłoszenie i napisz potwierdzenie
W panelu Wiadomość do Twojego zespołu dodaj adresy w Kopia do i Ukryta kopia do, Temat wiadomości (ze zmiennymi) oraz Trasy: wybierz pole listy, odpowiedzi i odbiorców oraz czy zgłoszenie trafia zamiast adresu tematu, czy oprócz niego. Następnie w Potwierdzenie dla klienta włącz je i wpisz temat oraz tekst w każdym języku.
Każde zgłoszenie do właściwego zespołu
Zapisz, a potem kliknij Zobacz w sklepie: wybierz temat na stronie kontaktu i wypróbuj formularz.
4. Śledź zgłoszenia
Każde zgłoszenie pojawia się w zakładce Zgłoszenia: otwórz je, aby przeczytać odpowiedzi i pobrać pliki. Aby wyeksportować, wybierz temat i daty w Eksport do CSV, a potem kliknij Eksportuj.
Zgłoszenia przechowywane w tabeli i eksportowane do CSV
5. Chroń formularz i ustaw prywatność
Otwórz zakładkę Ustawienia: panel Ochrona przed spamem zawiera limity (domyślnie 10 zgłoszeń na godzinę z jednego adresu, 5 z jednego e-maila, minimum 3 sekundy na wypełnienie formularza, 3 linki w wiadomości), opcjonalną captchę i jej klucze oraz to, co zrobić, gdy captcha jest niedostępny (przyjąć zgłoszenie lub je odrzucić). Panel Zgłoszenia, pliki i prywatność pozwala przechowywać zgłoszenia w panelu administracyjnym, usuwać je po określonej liczbie dni (0 zachowuje je do czasu, aż je usuniesz), ustawić maksymalny rozmiar pliku, akceptowane typy plików i rozmiar plików dołączanych do e-maila dla zespołu.
Ustawienia ochrony przed spamem, przechowywania i prywatności
Licencja
Po instalacji Konfiguruj wyświetla formularz aktywacji: wpisz klucz licencji i sekret licencji dostępne w Twojej strefie klienta WePresta. Licencję można dezaktywować na domenie z tej samej strony. Gdy subskrypcja wygasa, siedmiodniowy okres karencji zapobiega przerwie; potem strona kontaktu zachowuje prosty formularz (temat, e-mail, wiadomość, załącznik), który nadal tworzy rozmowę, aż do odnowienia licencji. Moduł sam zauważa odnowienie (ponownie pyta serwer licencji najwyżej raz na godzinę) oraz za każdym razem, gdy otwierasz jego strony w panelu administracyjnym. Twoje formularze i ich dane są zachowane.
Typowe zastosowania
Serwis posprzedażowy: właściwe pytania dla każdego powodu
Jeden formularz z listą Powód: awaria prosi o numer zamówienia i zdjęcie, zwrot prosi o numer zamówienia, „Inne” o nic więcej. Twój zespół otrzymuje kompletne zgłoszenia i kieruje zwroty do zespołu zwrotów za pomocą trasy.
Zapytania ofertowe B2B
Temat Zapytanie ofertowe z firmą, e-mailem do faktur (sprawdzanym jako e-mail), stroną internetową (sprawdzaną jako adres www), telefonem, ilością (sprawdzaną jako liczba) i terminem. Zarezerwuj go dla grupy klientów firmowych, jeśli chcesz.
Temat tylko dla członków
Ogranicz formularz do grupy klientów: tylko ci klienci widzą temat na stronie kontaktu.
Jeden formularz dla wielu sklepów
Wyeksportuj formularz do pliku JSON i zaimportuj go w innym sklepie: pola, warunki, odpowiedzi i teksty przychodzą z nim, wyłączone do czasu, aż je sprawdzisz.
Zbieranie dokumentów
Dodaj pole Plik z akceptowanymi typami (na przykład pdf,png,jpg), maksymalnym rozmiarem i liczbą plików: pliki są przechowywane poza folderem publicznym, a Twój zespół pobiera je ze zgłoszenia.
FAQ
Do czego służy „dynamiczny” formularz kontaktowy w PrestaShop?
Formularz natywny jest często zbyt ogólny: te same pola dla każdego tematu, mało informacji o sprawie i wiele wymian z obsługą klienta. Moduł zastępuje go formularzem dla każdego tematu (obsługa klienta, wycena, wsparcie techniczne, współpraca…), z polami dopasowanymi do zgłoszenia, które pojawiają się tylko wtedy, gdy są potrzebne, dzięki czemu każda wiadomość trafia kompletna i do właściwego zespołu.
Czy naprawdę można stworzyć inny formularz dla każdego tematu kontaktu?
Tak. Wybierz temat zdefiniowany w Parametry sklepu > Kontakt > Kontakty, utwórz jego formularz w module (Formularze) i dodaj pola: każdy temat ma własne pola i opcje, własnych odbiorców i własne potwierdzenie. Temat bez formularza pokazuje prosty formularz (e-mail, wiadomość, załącznik), więc żaden temat nie pozostaje pusty.
Jakie typy pól niestandardowych można dodać?
Dziewięć typów: tekst w jednej linii, tekst w wielu liniach, lista rozwijana, przyciski opcji, kilka pól wyboru, pole wyboru, data, plik i blok informacyjny. Pole tekstowe można sprawdzać jako adres e-mail, adres www, numer telefonu, liczbę lub według własnego wzorca. Każde pole może być wymagane, mieć tekst podpowiedzi i pomoc pod polem, a jego etykieta, odpowiedzi i teksty istnieją w każdym języku sklepu.
Jak działa logika warunkowa (pola, które pojawiają się lub znikają)?
Pole jest pokazywane tylko wtedy, gdy inne pole tego samego formularza spełnia warunek: odpowiedź na listę, przyciski opcji lub pola wyboru jest jedną z wybranych odpowiedzi (lub żadną z nich), pole wyboru jest zaznaczone (lub nie), albo pole tekstowe jest równe wartości, różni się od niej lub ją zawiera. Reguły są takie same w przeglądarce i na serwerze, a ukryte pole nie jest ani wymagane, ani zapisywane. Warunki mają jeden poziom: pole warunkowe nie może być rodzicem innego.
Czy niektóre formularze można zarezerwować dla klientów B2B (grupy klientów)?
Tak. Ogranicz formularz do jednej lub kilku grup klientów: temat widzą tylko ich klienci. To przydatne dla formularza „oferta dla firm”, formularza dla odsprzedawców lub tematu tylko dla członków, bez tworzenia wielu stron kontaktu.
Jak moduł pomaga w zgodności z RODO?
Każdy formularz może zawierać pole zgody z własnym tekstem (dozwolony HTML, na przykład link do polityki prywatności) lub korzystać ze zgody oficjalnego modułu RODO. Data zgody jest zapisywana ze zgłoszeniem. Zgłoszenia można usuwać automatycznie po wybranej liczbie dni, a także eksportować lub usuwać dla klienta za pomocą oficjalnego modułu RODO.
Czy klient otrzymuje automatyczne potwierdzenie po wysłaniu?
Tak, jeśli włączysz je dla formularza: potwierdzenie wychodzi zaraz po zgłoszeniu, z własnym tematem i tekstem w każdym języku oraz zmiennymi takimi jak {firstname}, {reference} lub odpowiedź na pole. Nigdy nie powtarza tego, co napisał klient. Samo zgłoszenie nadal tworzy rozmowę w Obsługa klienta > Obsługa klienta, tak jak formularz natywny.
Czy moduł jest chroniony przed spamem (bez CAPTCHA)?
Tak: limit zgłoszeń na godzinę dla każdego adresu i każdego e-maila (zapisany w bazie danych, więc robot bez ciasteczek go nie ominie), najkrótszy czas wypełnienia, limit linków, ukryte pole pułapka i token bezpieczeństwa. Jeśli chcesz więcej, można włączyć opcjonalną captchę (Cloudflare Turnstile lub Google reCAPTCHA, z własnymi kluczami).
Jak wdrożyć tę samą konfigurację w wielu sklepach (lub środowiskach)?
Każdy sklep ma własne formularze. Aby użyć formularza ponownie, wyeksportuj go do pliku JSON (pola, warunki, odpowiedzi i teksty) i zaimportuj w innym sklepie: zaimportowany formularz jest wyłączony, więc możesz go sprawdzić przed włączeniem. To przydatne dla agencji (staging → produkcja) i do kopii zapasowej formularzy przed aktualizacją.
Kompatybilność, wymagania i odinstalowanie: na co zwrócić uwagę?
PrestaShop 1.7.8, 8.0+ i 9.0+ z PHP 7.4 lub nowszym; zalecany HTTPS. PrestaShop 1.7.7 i starsze wersje nie są obsługiwane. Moduł wyłącza natywny formularz kontaktowy przy instalacji i włącza go ponownie po odinstalowaniu. Odinstalowanie usuwa formularze, zgłoszenia i ich pliki: najpierw wyeksportuj formularze (JSON) i zgłoszenia (CSV).
Czy każde zgłoszenie może trafić do właściwego zespołu?
Tak. Oprócz adresu tematu (Parametry sklepu > Kontakt > Kontakty) formularz może wysyłać kopię i ukrytą kopię na inne adresy, a trasy wybierają odbiorców według odpowiedzi na listę: na przykład zgłoszenie „Zwrot” trafia do zespołu zwrotów zamiast na zwykły adres, a zgłoszenie „Awaria” jest dodatkowo kopiowane do wsparcia. Temat wiadomości akceptuje zmienne.
Gdzie są przechowywane zgłoszenia i czy mogę je wyeksportować?
Każde zgłoszenie tworzy rozmowę w Obsłudze klienta i, jeśli przechowujesz zgłoszenia w panelu administracyjnym, wiersz w zakładce Zgłoszenia modułu: filtruj według tematu, daty lub e-maila, czytaj odpowiedzi, pobieraj pliki i eksportuj do CSV (jedna kolumna na pole) dla Excela, LibreOffice lub Arkuszy Google. Możesz też ustawić automatyczne usuwanie po określonej liczbie dni.
Co się stanie, gdy moja licencja wygaśnie?
Strona kontaktu nigdy nie pozostaje pusta: zachowuje prosty formularz (temat, e-mail, wiadomość, załącznik), który nadal tworzy rozmowę w obsłudze klienta. Twoje formularze i ich dane są zachowane i wracają po odnowieniu licencji: moduł sam zauważa odnowienie (ponownie pyta serwer licencji najwyżej raz na godzinę) oraz za każdym razem, gdy otwierasz jego strony w panelu administracyjnym. Siedmiodniowy okres karencji zapobiega przerwie w dniu wygaśnięcia.
Rozwiązywanie problemów
Strona kontaktu pokazuje prosty formularz zamiast moich formularzy
Sprawdź w tej kolejności: licencję (Konfiguruj pokazuje jej stan; prosty formularz to zachowanie bez aktywnej licencji); formularz (czy jest włączony i czy należy do tego sklepu?); temat (formularz jest wyświetlany dla tematu, do którego należy); grupy klientów formularza (odwiedzający nie widzi formularza zarezerwowanego dla grupy); Diagnostykę na dole strony ustawień.
Strona kontaktu nie pokazuje nic
Twój motyw może nie pokazywać tego, co moduły umieszczają w obszarze kontaktu. Diagnostyka mówi, co robi Twój motyw. W PrestaShop 1.7 moduł sam obsługuje szablon kontaktu klasycznego motywu; motyw potomny, który zastępuje szablon kontaktu, musi zachować obszar kontaktu.
Moje e-maile nie docierają
Sprawdź ustawienia e-mail PrestaShop (Parametry zaawansowane > E-mail): moduł prosi PrestaShop o wysłanie wiadomości, a Diagnostyka ostrzega, gdy wysyłanie jest wyłączone. Same zgłoszenia pozostają w obsłudze klienta i w zakładce Zgłoszenia.
Plik zostaje odrzucony
Rozszerzenie musi należeć do akceptowanych typów, plik mieścić się w maksymalnym rozmiarze, a jego zawartość odpowiadać typowi, gdy dostępne jest rozszerzenie fileinfo. Programy i strony internetowe nigdy nie są akceptowane.
Klient dowiaduje się, że wysłał zbyt wiele zgłoszeń
Limity na godzinę dla adresu i dla e-maila chronią Cię przed robotami. Zwiększ je w Ustawienia > Ochrona przed spamem, jeśli kilku prawdziwych klientów dzieli adres (firma, szkoła).
Captcha się nie pojawia
Oba klucze (klucz witryny i klucz tajny) muszą być zapisane, a Twoja polityka bezpieczeństwa treści musi zezwalać na dostawcę (Cloudflare Turnstile lub Google reCAPTCHA).
Zmodyfikowałem nadpisanie z wersji 1.0.0
Aktualizacja zostawia nadpisanie, które zmodyfikowałeś ręcznie, a Diagnostyka o nim informuje. Moduł już go nie potrzebuje: porównaj swoje zmiany, a potem usuń plik ContactController.php z folderu override/controllers/front/ i wyczyść pamięć podręczną.
Changelog
Wersja 2.0.0
Nowości
- Warunki, które działają: pole jest pokazywane tylko wtedy, gdy odpowiedź na inne pole jest jedną z wybranych odpowiedzi (lub żadną z nich), gdy pole wyboru jest zaznaczone lub gdy tekst pasuje; przeglądarka i serwer stosują te same reguły.
- Nowe typy pól: przyciski opcji, kilka pól wyboru i blok informacyjny, z tekstem podpowiedzi i pomocą pod każdym polem.
- Sprawdzanie e-maila, adresu www, numeru telefonu, liczby lub własnego wzorca, z komunikatem przy polu; to, co wpisał klient, zostaje zachowane po błędzie.
- Działające pole pliku: wybierasz typy, rozmiar i liczbę plików, a pliki są przechowywane poza publicznym folderem sklepu.
- Kierowanie zgłoszeń: kopia i ukryta kopia dla każdego formularza, odbiorca wybrany według odpowiedzi na listę oraz temat wiadomości ze zmiennymi.
- Potwierdzenie dla klienta dla każdego formularza, w każdym języku, które nigdy nie powtarza swobodnej wiadomości klienta.
- Zgłoszenia przechowywane w panelu administracyjnym, w tabeli z filtrami, plikami do pobrania i eksportem do CSV.
- Automatyczne usuwanie zgłoszeń po wybranej liczbie dni oraz eksport i usuwanie za pomocą oficjalnego modułu RODO.
- Rozmowa w obsłudze klienta odsyła do zgłoszenia, a klient, który odpowiada z Twojego e-maila, kontynuuje tę samą rozmowę.
- Ochrona przed spamem według adresu i e-maila, najkrótszy czas wypełnienia, limit linków oraz opcjonalny Cloudflare Turnstile lub Google reCAPTCHA.
- Hook dla programistów, actionWeprestaDcfSubmitBefore, pozwalający zaakceptować lub odrzucić zgłoszenie przed wysłaniem.
- Diagnostyka z przyciskiem Kopiuj dla wsparcia oraz tryb debugowania.
- Moduł działa w PrestaShop 1.7.8, 8.0+ i 9.0+ z PHP 7.4 minimum, w jednym archiwum o rozmiarze około 340 KB.
- Panel administracyjny modułu jest przetłumaczony na francuski, angielski, hiszpański, włoski i polski.
Ulepszenia
- Temat bez formularza pokazuje prosty formularz (e-mail, wiadomość, załącznik) zamiast niczego, a wyłączony formularz zwraca swój temat prostemu formularzowi.
- Tabela pól z warunkiem zapisanym jako zdanie, okno edycji pola z paskiem języków, odpowiedzi wklejane po jednej w wierszu i przełącznik stanu przy każdym formularzu.
- Duplikowanie formularza, eksport do pliku JSON, import (formularz jest wyłączony) i usuwanie kilku formularzy naraz.
- Jeden formularz dla tematu i dla sklepu w instalacji multi-store.
- Strona kontaktu klasycznego motywu PrestaShop 1.7 pokazuje formularz bez żadnego nadpisania w sklepie.
- Strona kontaktu ładuje formularze kilkoma zgrupowanymi zapytaniami, niezależnie od liczby pól.
- Natywny formularz kontaktowy jest włączany ponownie po odinstalowaniu modułu, a nieudana instalacja niczego nie zostawia.
- Archiwum zmniejsza się z 28 MB do około 340 KB.
Poprawki
- Strona kontaktu nie zostaje już bez żadnego formularza, gdy licencja ma problem.
- Strony administracji nie przestają już działać w PrestaShop 1.7 ani w PHP 7.
- Warunki można zapisać i zastosować, a przełącznik Aktywny formularza działa.
- Wymagane pole pliku nie uniemożliwia już wysłania, a plik nie ginie.
- W PrestaShop 8 Usuń zaznaczone usuwa zaznaczone formularze, a nie pierwszy formularz.
- Apostrofy w etykietach nie zyskują już ukośnika przy każdym zapisie, a wzorzec taki jak ^[0-9]{5}$ nie odrzuca już każdego wpisu.
- Wygasły token bezpieczeństwa nie zamyka już klienta w pętli, a długa wiadomość nie kończy się stroną błędu.
- Pracownik bez uprawnień nie może już zmieniać formularzy, a kolejności sortowania list nie można już nadużyć.
- Komunikaty pokazywane klientom, nagłówek rozmowy i tematy e-maili są przetłumaczone.
Po aktualizacji: Twoje formularze i ich pola są zachowane, teksty i wzorce uszkodzone przez wersję 1.0.0 są naprawione, warunki są przekonwertowane, nadpisanie zainstalowane przez wersję 1.0.0 jest usunięte (to zmodyfikowane ręcznie jest zachowane, a Diagnostyka Cię o tym informuje), a biblioteki, które zawierało, są usunięte. Jeśli CSS i JavaScript motywu są łączone, wyczyść pamięć podręczną PrestaShop.
Wersja 1.0.0
- Pierwsza wersja
Wsparcie
W razie potrzeby skontaktuj się z nami przez strefę klienta WePresta lub e-mailem na adres mail@wepresta.shop, zależnie od opcji wsparcia w Twoim planie.
Zanim napiszesz, przygotuj:
- wersje PrestaShop i PHP
- raport Diagnostyki (przycisk Kopiuj dla wsparcia)
- używany motyw
- zrzuty ekranu formularza i edytora