Ulepszony formularz kontaktowy: konfiguracja i pomoc

Szybki start

  1. Prześlij ZIP modułu w "Modules > Module Manager" i otwórz "Configure".
  2. Edytuj "Default Contact Form" w Formularz kontaktowy > Formularze, w tym Tytuł formularza i E-mail administratora.
  3. Sprawdź Wyślij e-mail do administratora, Wyślij potwierdzenie do klienta i Pole wyboru RODO w formularzu.
  4. Sprawdź aktywne pola w sekcji Pola, zachowując pole typu e-mail do potwierdzeń.
  5. Skonfiguruj sekcje Informacje o firmie, Lokalizacja i godziny oraz Ochrona przed spamem.
  6. Włącz Zamień natywną stronę kontaktu, jeśli standardowy URL kontaktu ma używać tego formularza.
  7. Wyślij test po upływie czasu określonego w polu Min. czas wysłania i sprawdź Zgłoszenia oraz obie docelowe skrzynki e-mail.

Wymaga PrestaShop 1.6.1 lub nowszego i PHP 7.1 lub nowszego.

Instrukcja konfiguracji

Instalacja i przygotowanie pierwszego formularza

  1. Prześlij ZIP Better Contact Form w "Modules > Module Manager" i otwórz "Configure".
  2. Otwórz Formularz kontaktowy > Formularze i edytuj "Default Contact Form".
  3. Sprawdź Tytuł formularza, Opis, E-mail administratora, Komunikat potwierdzenia i Etykieta RODO w każdym języku.
  4. Otwórz Pola i sprawdź zainstalowane pola imienia i nazwiska, e-maila, telefonu, tematu i wiadomości.
  5. Skonfiguruj stronę kontaktu i ustawienia e-mail opisane poniżej.
  6. Wyślij wiadomość testową. Potwierdź, że pojawia się w sekcji Zgłoszenia, i sprawdź obie skrzynki powiadomień.

Wymaga PrestaShop 1.6.1 lub nowszego i PHP 7.1 lub nowszego.

Menu modułu zawiera Panel, Formularze, Pola, Zgłoszenia i Ustawienia. "Configure" otwiera ekran konfiguracji w sekcji Ustawienia.

Konfiguracja strony kontaktu

Ogólny

Ustawienie Domyślnie Co robi
Zamień natywną stronę kontaktu Nie Kieruje standardowy URL kontaktu, w tym językowe przepisania adresu, do strony modułu. Włącz po przetestowaniu formularza.
Włącz znaczniki Schema.org Tak Dodaje dane LocalBusiness na głównej stronie kontaktu modułu oraz FAQPage, gdy obecna jest treść FAQ.

Bez zastępowania strony możesz otworzyć kontroler frontowy display modułu przez link modułu wygenerowany przez PrestaShop. Własna obsługa SEO modułu traktuje strony id_form poszczególnych formularzy jako warianty noindex, follow. Centralny mechanizm SEO stron może kontrolować końcowe metadane.

Informacje o firmie

Ustawienie Domyślnie Co zrobić
Pokaż karty informacji biznesowych Tak Wyświetla karty adresu sklepu, telefonu i e-maila z ustawień PrestaShop.
Numer WhatsApp Puste Wpisz numer międzynarodowy z kodem kraju, np. +48511511286. Pozostaw puste, aby go pominąć.
Pokaż linki społecznościowe Tak Wyświetla zapisane linki do profili społecznościowych.
Pokaż sekcję FAQ Tak Wyświetla zapisane pytania i odpowiedzi.

"Social Links" i "FAQ Items" są zapisanymi wartościami JSON, a nie edytowalnymi polami obecnego formularza konfiguracji. Linki społecznościowe są domyślnie pustą listą. FAQ zawiera domyślnie trzy ogólne pytania o czas odpowiedzi, wsparcie telefoniczne i odwiedziny w biurze. Sprawdź treść przed włączeniem sekcji dla klientów. Może nie opisywać Twojej firmy.

Lokalizacja i godziny

Ustawienie Domyślnie Co zrobić
Pokaż mapę Tak Włącza blok mapy. Obie współrzędne również muszą być niepuste.
Szerokość geograficzna mapy Puste Wpisz szerokość geograficzną znacznika.
Długość geograficzna mapy Puste Wpisz długość geograficzną znacznika.
Poziom powiększenia mapy 15 Dostosuj powiększenie OpenStreetMap. Formularz sugeruje od 1 do 18.
Pokaż godziny otwarcia Tak Pokazuje zapisany tygodniowy harmonogram i bieżące obliczenie otwarte/zamknięte.
Strefa czasowa PrestaShop PS_TIMEZONE Wpisz poprawny identyfikator strefy czasowej PHP, jeśli godziny firmy używają innej strefy. Nie jest ona na stałe ustawiona na Europe/Warsaw.

Zapisany JSON opening_hours domyślnie obejmuje poniedziałek do piątku od 09:00 do 17:00, z zamknięciem w sobotę i niedzielę. Obecny formularz nie ma edytora harmonogramu. Programista może zmienić zapisaną strukturę z kluczami mon, tue, wed, thu, fri, sat, sun; każdy ma ciągi open i close. Puste wartości oznaczają zamknięcie. Sprawdź wyświetlany harmonogram i strefę czasową przed publikacją.

Ustawienia e-mail i spamu

E-mail

Ustawienie Domyślnie Użycie podczas działania
Wyślij powiadomienie do administratora Tak Globalna wartość rezerwowa, gdy formularz nie ma własnego przełącznika.
Adres e-mail administratora E-mail sklepu Odbiorca rezerwowy, gdy E-mail administratora formularza jest puste. Rozdziel wiele adresów przecinkami.
Wyślij potwierdzenie do klienta Tak Globalna wartość rezerwowa, gdy formularz nie ma własnego przełącznika. Wymaga przesłanego adresu e-mail klienta.

Zainstalowany formularz ma własne przełączniki poczty. Zmieniaj je w Formularze, aby zatrzymać pocztę dla tego formularza. Przełącznik globalny nie jest nadrzędnym nadpisaniem wypełnionych ustawień formularza.

Ochrona przed spamem

Ustawienie Domyślnie Użycie podczas działania
Włącz ochronę Honeypot Tak Zapisana preferencja globalna. Ochroną każdego formularza steruje jego ustawienie Włącz honeypot.
Włącz sprawdzanie oparte na czasie Tak Zapisana preferencja globalna. Kontrolą czasu każdego formularza steruje jego ustawienie Włącz sprawdzanie czasu.
Minimalny czas wysłania (sekundy) 3 Zapisana preferencja globalna. Każdy formularz używa własnej wartości Min. czas wysłania.
Maks. zgłoszeń na IP/godzinę 10 Oznacza nową wiadomość, gdy ten IP ma już tyle zgłoszeń w ostatniej godzinie. Ustaw 0, aby wyłączyć.
Zablokowane słowa Puste Wpisz jeden fragment tekstu na wiersz, bez rozróżniania wielkości liter. Dopasowania w przesłanych wartościach oznaczają spam.
Zablokowane adresy IP Puste Wpisz jeden dokładny IP na wiersz. Pasujące zgłoszenia są oznaczane jako spam.

Ukryty honeypot to website_url_confirm. Kontrola czasu używa przesłanego znacznika czasu renderowania i oznacza również brakujące lub nieprawidłowe znaczniki. Te kontrole nie wyświetlają CAPTCHA.

Wiadomości spamowe są zapisywane z powodem, ale bez powiadomień e-mail. Odwiedzający otrzymuje standardowy komunikat potwierdzenia. To oznaczanie, a nie zakaz odwiedzania sklepu.

Tworzenie i edycja formularzy

Otwórz Formularze i dodaj lub edytuj wiersz. Zainstalowany formularz ma wewnętrzną nazwę "Default Contact Form". Jego angielski Tytuł formularza to "Contact us", a opis to "Send us a message and we will get back to you as soon as possible." Nowe pola tekstowe wymagają własnej treści.

Pole Domyślnie w zainstalowanym formularzu Co zrobić
Nazwa wewnętrzna "Default Contact Form" Ustaw prywatną etykietę organizacyjną.
Tytuł formularza "Contact us" Ustaw wielojęzyczny nagłówek w sklepie.
Opis Zainstalowany opis kontaktu Ustaw wielojęzyczne wprowadzenie.
Komunikat potwierdzenia Dziękujemy za wiadomość! Otrzymaliśmy Twoje zapytanie i wkrótce odpowiemy. Ustaw wielojęzyczne potwierdzenie wyświetlane po zapisie.
Wyślij e-mail do administratora Tak Włącz powiadomienia dla tego formularza.
E-mail administratora Puste Zastąp globalnego odbiorcę lub pozostaw puste, aby użyć wartości rezerwowej. Adresy rozdzielaj przecinkami.
Temat wiadomości Nowe zgłoszenie formularza kontaktowego Ustaw wielojęzyczny temat dla administratora. Mechanizm wysyłki dopisuje nazwę sklepu.
Wyślij potwierdzenie do klienta Tak Włącz potwierdzenie na przesłany adres e-mail.
Włącz honeypot Tak Sprawdza ukryte pole botów tego formularza.
Włącz sprawdzanie czasu Tak Sprawdza czas, który upłynął dla tego formularza.
Min. czas wysłania 3 sekundy Zmień minimalny czas formularza.
Pole wyboru RODO Tak Wymaga zaznaczenia zgody przed zapisem.
Etykieta RODO Wyrażam zgodę na przetwarzanie moich danych osobowych zgodnie z polityką prywatności. Ustaw wielojęzyczną treść zgody.
Aktywne Tak Wyłącz, aby zatrzymać wyświetlanie i przesyłanie formularza.

Dodawanie i porządkowanie pól

Otwórz Pola i wybierz odpowiedni Formularz. Nowe pola domyślnie mają typ Tekst, nie są wymagane, są aktywne, mają Pozycja 0 oraz puste wartości tekstu i walidacji.

Pole Co zrobić
Formularz Przypisz pole do formularza.
Etykieta Ustaw widoczną etykietę wielojęzyczną.
Nazwa pola Ustaw przesyłany klucz, np. company_name, order_number, website lub vat_number. Nazwa POST przyjmuje postać mpr_cf_FIELD_NAME.
Typ pola Wybierz text, email, phone, textarea, select, checkbox, url, number lub file.
Tekst zastępczy Ustaw wielojęzyczną wskazówkę wprowadzania.
Opis Ustaw wielojęzyczną pomoc pod polem.
Wymagane Wymagaj przesłanej wartości.
Reguła walidacji Opcjonalnie podaj istniejącą metodę Validate PrestaShop, np. isName, isEmail, isPhoneNumber lub isMessage.
Opcje Wpisz jedną dozwoloną wartość Wybór / lista rozwijana na wiersz.
Pozycja Ustaw kolejność pól.
Aktywne Ukryj lub pokaż to pole.

Dla listy tematów wpisz osobne wiersze: Pytanie o zamówienie, Prośba o zwrot, Porada produktowa, Konto firmowe i Inne. Pola e-mail, telefonu, URL, liczbowe i listy otrzymują również kontrole właściwe dla typu.

Zachowaj pole typu e-mail, jeśli chcesz potwierdzenia dla klientów. Użyj name lub full_name jako klucza nazwy, aby skopiować ją do kolumny imienia i nazwiska klienta w zgłoszeniu.

Przesyłanie pliku wyświetla pole pliku, ale przesłane pliki nie są zapisywane. Nie używaj go do zbierania załączników. Wymagane pola pliku mogą zostać odrzucone jako puste.

Osadzanie i stylizacja formularza

Użyj szablonu Smarty motywu lub modułu, który wykonuje hooki. Wklejenie Smarty do zwykłego HTML strony CMS nie powoduje wykonania go przez PrestaShop.

{hook h='displayMprContactForm'}
{hook h='displayMprContactForm' id_form=2}

Pierwsze wywołanie używa domyślnego aktywnego formularza. Drugie wybiera formularz według ID.

W sekcji Style motywu sprawdź wykrytą paletę, tekst, tła, obramowania, kolory sukcesu/błędu, kolor fokusu i promienie. Ustawienia prywatne obejmują "Form spacing" (20px), "Card shadow" (0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04)), "Raised card shadow" (0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -2px rgba(0, 0, 0, 0.05)) i "WhatsApp color" (#25D366).

Aby zmienić kod HTML, nadpisz w motywie te szablony modułu:

themes/your-theme/modules/mprcontactform/views/templates/front/contact_form.tpl
themes/your-theme/modules/mprcontactform/views/templates/front/contact_page.tpl

Używaj .mpr-contactform .mpr-cf-title, .mpr-contactform .mpr-cf-btn i .mpr-contact-page .mpr-cp-card--whatsapp do własnych stylów motywu.

Programista aktualizujący zapisane linki społecznościowe może użyć obiektu JSON z kluczami facebook, instagram, x, linkedin, youtube, tiktok, pinterest lub whatsapp, z URL profilu jako każdą wartością. Nie tworzy to dodatkowego pola administracyjnego.

Szablony poczty w views/templates/mails/ otrzymują {form_title}, {customer_name}, {customer_email}, {field_data}, {submission_date}, {ip_address}, {shop_name} i {shop_url}.

Weryfikacja zgłoszeń i rozwiązywanie problemów

Wyślij zwykłą wiadomość po odczekaniu czasu dłuższego niż minimum formularza. Sprawdź w sekcji Zgłoszenia formularz, imię i nazwisko, e-mail, IP, status, flagę spamu, datę i wartości pól. Odczytaj wartości w szczegółach wiersza. Akcje zbiorowe pozwalają oznaczać wiadomości jako przeczytane, jako spam lub je usuwać.

Jeśli brakuje poczty, najpierw sprawdź zapisane zgłoszenie: powód spamu, następnie przełączniki poczty formularza, adresy odbiorców i dostarczanie poczty PrestaShop. Zapisane zgłoszenie oznacza, że formularz zadziałał; e-mail mimo to może nie dotrzeć.

Jeśli brakuje formularza, sprawdź stan Aktywne, aktywne pola i wybrany ID formularza. Jeśli zastępowanie trasy nie działa, sprawdź Zamień natywną stronę kontaktu i przepisanie URL kontaktu sklepu. Jeśli brakuje mapy lub linków społecznościowych, sprawdź ich przełączniki i zapisane współrzędne lub linki.

Odinstalowanie

Wykonaj kopię definicji formularzy i zgłoszeń przed odinstalowaniem. Odinstalowanie usuwa schemat modułu, w tym formularze, pola i zgłoszenia, wraz z konfiguracją i wpisami administracyjnymi. Usuwa również rejestrację w Theme Detector. Użyj przełącznika Aktywne formularza lub wyłącz moduł, aby wstrzymać działanie z zachowaniem rekordów.

Pytania

Brak pytań o ten moduł

Zapytaj o instalację, zgodność lub konfigurację. Odpowiedzi pojawią się tutaj.

Znane problemy

13

Wzmocnienie zabezpieczeń

RozwiązaneZaktualizowano:
Naprawiono w: 1.7.5
Wzmocnienie zabezpieczeń.

Natywna strona kontaktowa wyświetlała dwa formularze

RozwiązaneZaktualizowano:
Naprawiono w: 1.7.2
Włączenie zastąpienia strony kontaktowej mogło pozostawiać widoczny zarówno formularz natywny, jak i zastępczy.

E-maile z powiadomieniami nie były dostarczane

RozwiązaneZaktualizowano:
Naprawiono w: 1.7.2
W PrestaShop od 1.7 do 9 e-maile z powiadomieniami o kontakcie i potwierdzeniami mogły nie być wysyłane, ponieważ nie można było znaleźć ich szablonów.

Odpowiedzi na potwierdzenia nie docierały do sklepu

RozwiązaneZaktualizowano:
Naprawiono w: 1.7.2
Odpowiedź na e-mail z potwierdzeniem dla klienta mogła używać niewłaściwego adresu odpowiedzi.

Etykiety panelu administracyjnego pozostawały po angielsku

RozwiązaneZaktualizowano:
Naprawiono w: 1.7.2
Niektóre ustawienia i krótkie etykiety panelu administracyjnego nie używały dostępnych tłumaczeń.

Domyślne godziny używały niewłaściwej strefy czasowej

RozwiązaneZaktualizowano:
Naprawiono w: 1.6.0
Nowe formularze kontaktowe używały stałej strefy czasowej zamiast strefy czasowej sklepu.

Strony kontaktowe mogły nie działać przy różnej obsłudze motywu

RozwiązaneZaktualizowano:
Naprawiono w: 1.6.0
Strony kontaktowe mogły nie działać, gdy inny zainstalowany moduł dostarczał starszy komponent obsługi motywu.

Brakujące zasoby formularza kontaktowego

RozwiązaneZaktualizowano:
Naprawiono w: 1.4.9
Brakujące zasoby panelu administracyjnego i sklepu mogły psuć wygląd formularza lub jego kontrolki.

Połączony CSS psuł style formularza kontaktowego

RozwiązaneZaktualizowano:
Naprawiono w: 1.4.9
Włączenie łączonego CSS mogło uniemożliwiać prawidłowe ładowanie stylów formularza kontaktowego.

Brak stylów natywnego formularza kontaktowego

RozwiązaneZaktualizowano:
Naprawiono w: 1.4.8
Formularze wyświetlane na natywnej stronie kontaktowej mogły pojawiać się bez stylów modułu.

Brak stylów samodzielnego formularza

RozwiązaneZaktualizowano:
Naprawiono w: 1.4.7
Formularz wyświetlany na własnej stronie mógł pojawiać się bez zamierzonego układu i stylów.

Linki językowe strony kontaktowej były błędne

RozwiązaneZaktualizowano:
Naprawiono w: 1.4.4
Zmiana języka na stronie kontaktowej mogła prowadzić do błędnego adresu strony kontaktowej.

Tytuł strony kontaktowej pomijał nazwę sklepu

RozwiązaneZaktualizowano:
Naprawiono w: 1.4.4
Tytuł strony kontaktowej nie zawierał nazwy sklepu.

Zgłoszenia funkcji

7

Zaimplementowane

Przetłumaczony domyślny formularz kontaktowy

Zaimplementowane
Jeśli nie ma jeszcze formularza, tworzy domyślny formularz kontaktowy z przetłumaczonymi etykietami, podpowiedziami, listą tematów i tekstem zgody na przetwarzanie danych. Dla nieobsługiwanych języków używa tekstów angielskich.

Własne formularze kontaktowe

Zaimplementowane
Twórz formularze z konfigurowalnymi polami, kieruj powiadomienia do odpowiednich odbiorców i zachowuj historię zgłoszeń.

Wbudowana ochrona przed spamem

Zaimplementowane
Konfiguruj ochronę honeypot, kontrole czasu wysyłania i limity częstotliwości dla formularzy kontaktowych.

Wygląd formularzy dopasowany do motywu

Zaimplementowane
Dostosowuj wygląd formularzy za pomocą stylów motywu sklepu.

Aktualizacje jednym kliknięciem

Zaimplementowane
Aktualizuj moduł z jego strony administracyjnej.

Wersje językowe strony kontaktowej

Zaimplementowane
Udostępniaj alternatywne adresy strony kontaktowej dla aktywnych języków sklepu.

Cloudflare Turnstile

Zaimplementowane
Opcjonalnie chroń zgłoszenia z formularza kontaktowego za pomocą Cloudflare Turnstile.

Dziennik zmian

v1.4.82026-09-06

  • FixedContact form stylesheet now loads on the native PrestaShop contact page (registered via actionFrontControllerSetMedia with a PS 1.6 link fallback)
Starsze wersje

v1.4.72026-08-10

  • FixedFront-office form styling on the standalone contact page

v1.4.62026-05-27

  • AddedLocalize default contact forms
  • AddedUse shared theme style tokens
  • Addedcomplete FR/DE/ES/IT/PL translations
  • FixedVendor prestashop compat as files
  • FixedSuppress contact schema on noindex form variants
  • FixedCapture contact user agent safely
  • FixedUse local CSS path for CCC bundling compatibility

v1.4.62026-05-26

  • Fixeddemo installation by refreshing shared package wiring and autoload registration.
  • Addedlazy post-install integrity runner so first-visit install checks fire consistently.
  • Cleaned the customer ZIP packaging for current shared admin, integrity, update, selector, and search assets.

v1.3.02026-04-20

  • Addedself-healing integrity checks for automatic diagnostics and repair
  • Addedautomatic theme detection for Classic and Hummingbird style compatibility
  • Addedadmin menu management via MenuInstaller for streamlined module setup
  • AddedLicense management tab with key management and renewal options
  • Addedcomplete FR/DE/ES/IT/PL translations
  • Improvedadmin list columns with visual badge indicators and multiselect filters
  • Improvedsettings form organization with tabbed layout
  • ImprovedSEO handling with proper canonical URLs and meta tags on all front pages
  • FixedAdd canonical route name for getModuleLink resolution
  • FixedAppend shop name to contact page meta title
  • Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns

v1.2.02026-02-13

  • AddedPrestaShop 9 and Hummingbird theme compatibility
  • Addedfile attachment support with configurable allowed file types and maximum upload size
  • Improvedform-specific recipient email and customer confirmation settings
  • Fixedhoneypot field interfering with PS native form validation on older jQuery builds
  • Addedminimum submit-time anti-bot checks as companion protection to honeypot fields

v1.0.02025-12-04

  • Initialrelease of Better Contact Form
  • InitialCustom field builder: add text, textarea and select fields via the back office interface
  • InitialHoneypot anti-bot protection with no CAPTCHA friction for legitimate users
  • InitialForm-specific recipient email address for admin notifications
  • InitialInquiry log in back office with full submission history and CSV export

v1.1.02025-09-16

  • Addedcustom field types: email, phone, URL, number, checkbox, file upload, textarea and select
  • Addedconfigurable success messages and customer confirmation emails per form
  • Improvedback office submission tracking and filtering
  • Fixedsubmitted form data not saved to inquiry log when email delivery fails

Demo

Przetestuj pełny moduł przed zakupem

Licencję kupisz później, a ustawienia zostaną.

  • Twoje 30-dniowe demo Przetestuj go we własnym sklepie przez 30 dni od pierwszej instalacji.
  • Gotowy sklep demo Poznaj gotowy sklep demo w przeglądarce.
  • Bez rejestracji Bez konta, adresu e-mail ani domeny sklepu.
Uruchom sklep demo

Pobierając, akceptujesz warunki dema i politykę prywatności.

Otwierając to demo, akceptujesz regulamin wersji demo oraz politykę prywatności.

Ładowanie...
Do góry