• Vytváříme formulář na modx revo. Formulář zpětné vazby na MODX Revo pomocí Formit s neobvyklým captcha. Vytvořit sendEmailTpl chunk

    06-08-2014 22:30:00 3886 komentářů ollserg & MaxWeb pro vás

    O Pomocí balíčku FormIt rychle vytvoříme formulář zpětné vazby na webu, na kterém běží CMF MODX revo.
    Proces instalace balíčků na MODX revo nebude v tomto příspěvku podrobně popsán kvůli jeho jednoduchosti a velkému množství materiálu na toto téma na internetu. Dovolte mi, abych vám připomněl sled akcí:
    <Система> - <Управление пакетами> - <Загрузить дополнения> - <Поиск>(zadejte - FormIt)


    H tiskneme<Загрузить>, a pak<Установить>
    D Vytvořme nový chunk a nazvěme ho




    a vložte následující kód:















    S vytvořte blok sendEmailTpl. Popisuje, jaké informace odeslat na e-mail, a vložte tam kód:

    Od koho:


    Telefon:



    Zpráva:

    Tady:
    - Jméno odesílatele
    - telefonní číslo odesílatele
    - e-mail odesílatele
    - zpráva napsaná odesílatelem na stránce

    D Dále vytvoříme stránku se zprávou o úspěšném odeslání a poděkováním za to, že uživatel poslal zprávu prostřednictvím formuláře zpětné vazby.
    Například:

    Děkujeme za zaslání e-mailu!
    Váš email byl úspěšně odeslán.
    Náš specialista vám odpoví co nejdříve.

    H a nastavíme pro tuto stránku přesměrování podle jejího ID.


    Ne zapomeňte změnit hodnotu parametru &redirectTo=`178` v místě, kde se volá fragment FormIt (v kódu bloku

    ), kterému by mělo být předáno správné ID prostředku. A také &emailTo=` [e-mail chráněný]` - přirozeně na vaší krabici.

    Mám tuto stránku s ID - 178. Toto ID použijeme níže při volání FormIt.

    Podívejme se blíže na blok volání doplňku FormIt:

    Tady:
    Prvním parametrem jsou háčky. Háčky jsou skripty pluginu FormIt.
    V našem případě máme dva z nich – email je zodpovědný za samotné odesílání emailů,
    a přesměrování - pošle uživatele na stránku s poděkováním za kontakt;
    emailTpl – šablona emailu odeslaná na web. Výše jsme jej vytvořili a upravili;
    emailSubject - předmět emailů, které budou přicházet z webu;
    redirectTo - ID stránky, která se uživateli zobrazí poté
    jak poslal zprávu prostřednictvím formuláře zpětné vazby. Vytvořili jsme to dříve;
    emailTo - e-mailová adresa, na kterou budou zasílány e-maily z webu.

    Potřebujeme přidat pár pravidel CSS, aby náš formulář vypadal hezčí.
    input, label, textarea( display: block; )
    input, textarea( margin: 0 0 10px 0; border: 1px solid #ccc; padding: 5px; )
    input.submit_button( background-color: #43A52B; border: 1px solid #358222; padding: 5px 10px; border-radius: 3px; font: 13px Arial, Verdana, Tahoma, sans-serif; color: #fff; kurzor: pointer ;)
    input.submit_button:hover( background-color: #358222; )
    span.required,
    span.error(color: #ff0000; )
    span.required( font-size: 18px; )
    span.error( font-size: 11px; )

    Na Web MODX revo vypadá takto:


    A Objem naší práce byl formulář zpětné vazby MODX revo využívající balíček FormIt. Nejste spokojeni se vzhledem? Upravte kód CSS nebo napište svůj vlastní. To je vlastně vše. Objednejte témata článků. V případě potíží pomůžeme s jejich řešením.

    Komentáře
    asdfgzx odpověděl v pátek, 8. 8. 2014 - 11:50

    DĚKUJI
    Jednoduché a srozumitelné
    Nainstaloval jsem to na svůj web a hned to fungovalo.
    Formulář zpětné vazby je dobrý, ale návrh bude muset být dokončen!

    Odpovědět
    Slavik odpověděl ve středu, 29. 10. 2014 - 17:20

    NEVYŠLO
    Vše jsem nainstaloval a nastavil. Při odesílání to jde na stránku s poděkováním, ale na mail nic nepřišlo (:

    Odpovědět
    Ayat odpověděl ve středu, 03/12/2014 - 22:54

    DĚKUJI
    Děkuji za podrobný popis. Všechno funguje!

    Odpovědět
    Maxim odpověděl dne Po, 8. 12. 2014 - 16:13

    CHYBA
    Dobrý den, v logu mám následující chybu:

    jak to opravit, neříkejte mi?

    Odpovědět
    Maxim odpověděl dne Po, 8. 12. 2014 - 16:14

    CHYBA
    Dobré odpoledne, neříkejte mi, co se děje?

    (CHYBA @ /modx/connectors/modx.config.js.php) Chyba při ukládání tématu lexikonu do mezipaměti lexicon/ru/core/resource

    Odpovědět
    ollserg odpověděl v úterý, 23. 12. 2014 - 20:41

    OMLOUVÁM SE ZA DLOUHOU ODPOVĚĎ
    Taková chyba podle mě nastává při používání galerie.
    Experimentujte s galerií a verzemi motoru! Otázka je spíš taková.

    Odpovědět
    Michael odpověděl v Út, 03/02/2015 - 12:17

    VALIDACE
    V případě, že některý formulářový prvek neprošel validací, obrazovka se posune nahoru. Jak to nechat na místě formuláře?

    Odpovědět
    vita odpověděl ve čtvrtek, 28.07.2016 - 17:26

    VALIDACE
    To se provádí velmi jednoduše. Jen to nemůžete nechat na místě, musíte k němu rolovat. Chcete-li to provést, musíte vytvořit identifikátor (id) pro požadovaný prvek a zadat jej v parametru akce pomocí #:

    díky za odpověď -itchief.ru- převzal to odtud.

    Odpovědět
    ollserg odpověděl ve středu, 4. 2. 2015 - 16:33

    RÁD VIDĚT.
    Zkontrolujte rozložení. Je to jasně ona.
    No a tak nejlépe vizuálně, tzn. Snímek obrazovky

    Odpovědět
    Andrey odpověděl dne Po, 02/03/2015 - 13:08

    Z MÍSTNÍHO SERVERU
    Je mi líto, ale bude tento formulář fungovat na místním serveru se síťovým přístupem (otevřený server)? Zkoušel jsem odeslat z tohoto formuláře, ale nic nepřišlo.
    Server má přístup k síti - balíčky z externích repozitářů se instalují z admin panelu modx.

    Odpovědět
    ollserg odpověděl v úterý, 3. 3. 2015 - 20:59

    FORMULÁŘ NA MÍSTNÍM SERVERU
    Podle definice nemůže formulář fungovat na místním serveru. Pouze hosting.

    Odpovědět
    ollserg odpověděl v úterý, 3. 3. 2015 - 21:03

    ANO A VÝVOJ STRÁNEK NA
    Ano, a vývoj stránek na MODX probíhá online na hostingu mnohem pohodlnějším.

    Odpovědět
    Denis odpověděl Čt, 16. 4. 2015 - 22:11

    FORMIT
    Dobré odpoledne
    Vše funguje s vaším formulářem! Děkuji!
    ale zkusil jsem si to přizpůsobit svému a nic nefunguje.
    Zde je kód, podívejte se prosím! Děkuji!
    Mail se změnil například na [email protected]





    Odpovědět
    ollserg odpověděl dne Pá, 17. 4. 2015 - 11:07

    TENTO KÓD ZPĚTNÉ VAZBY NEMUSÍ FUNGOVAT!
    Toto není adaptace! Odebrali jste všechny funkce! Přečtěte si pozorně článek a pochopíte.
    Zde jsem vše podrobně namaloval, ale pokud by to stále nevyšlo, můžete se přihlásit prostřednictvím „objednávkového“ formuláře na této stránce.

    Odpovědět
    Denis odpověděl dne Po, 20/04/2015 - 17:56

    FORMIT POPUP WINDOWS
    Děkuji! vyřešil to!
    Máte nějaký návod, jak to udělat, aby se po kliknutí na tlačítko "odeslat" objevila hláška o urychleném odeslání ve vyskakovacím okně a ne na nové stránce?

    Odpovědět
    ollserg odpověděl ve čtvrtek, 23. 4. 2015 - 14:56

    MODÁLNÍ OKNO
    Použijte na svém webu jako vyskakovací okno. Existuje mnoho způsobů implementace, jeden příklad:

    Otevřít okno 1


    No, CSS pro tento kód.

    Odpovědět
    Alexey odpověděl dne Ne, 31/05/2015 - 16:09

    MODÁLNÍ OKNO
    je nutné se zaregistrovat v html šabloně, ale hodnota #win1 je pro něj neznámá? Mělo by to být někde zveřejněno?


    Děkuji.

    Odpovědět
    Alexey odpověděl dne Ne, 31/05/2015 - 16:17

    MODÁLNÍ OKNO
    Upřesněte prosím, kde by měl být parametr #win1 nastaven ve formulářovém bloku, aby odkaz v html šabloně rozuměl tomu, co přesně je třeba zavolat? Možná jsem něco špatně pochopil, ale ta čára

    je nutné se registrovat do html šablony, ale hodnota win1 je pro něj neznámá? Mělo by to být někde zveřejněno?
    Modx znám teprve 3 dny, prosím, stejně jako vše výše, vysvětlete jednoduchým způsobem.
    Děkuji.

    Odpovědět
    ollserg odpověděl dne Po, 01.06.2015 - 12:28

    HTML KÓD MODÁLNÍHO OKNA


    Odpovědět
    Alex odpověděl v Út, 07.07.2015 - 10:18

    ŽÁDNÝ DOPIS

    Váš fungoval, dopis dorazil.


    Změnil jsem pole na ta, která potřebuji a bohužel, dopis přestal chodit.


    zde je kód





    Odpovědět
    ollserg odpověděl ve středu, 08.07.2015 - 13:09

    VE FORMĚ? POPISTE TEXT A E-MAIL
    In!FormIt? potřebný popis typu - &validate=`email:email:požadováno,text:požadováno:stripTags`

    Odpovědět
    Victor odpověděl dne Po, 19. 10. 2015 - 14:03

    PŘEDMĚT VE FORMULÁŘI ZPĚTNÉ VAZBY
    Dobrý den.
    Používám "&emailSubject=`Email ze stránky https://website/" - dopis se neodešle, formulář se vrátí do stavu chyby v poli.
    .
    Je jasné, že nerozumí kódování azbuky, ale kde hledat?
    Prosím, řekněte mi, co by to mohlo být. způsobit.
    Děkuji.

    Odpovědět
    ollserg odpověděl v úterý, 20. 10. 2015 - 22:47

    VERZE APACHE A PHP
    První věc, které si myslím, že byste měli věnovat pozornost ve vašem případě, jsou verze Apache a PHP na vašem serveru.

    Odpovědět
    AlexP odpověděl ve čtvrtek, 29. 10. 2015 - 14:15

    ZÁSTUPNÍK
    Zástupný symbol je zkrácen..
    Chtěl jsem vytvořit "Vaše jméno" uvnitř vstupu a stylu css, ale z nějakého důvodu je kód oříznut po value="" placeholder="Vaše jméno" - обрезается!}
    Děkuji

    Odpovědět
    ollserg odpověděl ve čtvrtek, 29. 10. 2015 - 20:01

    VŠECHNY ZAHRNUTÉ CSS BY MĚLY BÝT ZKONTROLOVÁNY
    K oříznutí „zástupného symbolu“ dochází právě kvůli rozložení

    Odpovědět
    Roman odpověděl Pá, 27. 11. 2015 - 13:43

    FORMA A OTÁZKY

    U Fornitu nebo jeho dokumentace je velká nevýhoda. Tady mám krásné vyskakovací okno se zpětnou vazbou, ale nevytváří se v samostatném dokumentu, ale vyskakuje pomocí jquery! Takže Formit s tím nefunguje .. A nechápu, jak to nastavit! Možná jste na něco podobného narazili.

    Odpovědět
    ollserg odpověděl v úterý 12.01.2015 - 23:23

    AJAXFORM POUŽÍVEJTE PRO ZPĚTNOU VAZBU POPUP
    FormIt neví, jak vytvořit ajax z krabice ... K němu, tzn. FormIt by měl být napsán jako doplněk... nebo použijte AjaxForm, což bude nejlepší řešení pro zpětnou vazbu ve vyskakovacích oknech.

    Odpovědět
    andreev888 odpověděl v So, 05/12/2015 - 22:26

    NĚCO ŠPATNĚ
    Lidi, řekněte mi, návod vypadá nejpřístupněji ze všech, co jsem viděl, vše jsem dělal podle návodu, ale formulář na stránkách vůbec nevidím ... ani háček, ani čárka . .. Není to jen zobrazeno... Kde hledat?

    Odpovědět
    ollserg odpověděl dne Ne, 06/12/2015 - 23:37

    MODX REVOLUTION - VYMAZAT CACHE
    A pokud v Menu - Site and Refresh site (Clear site cache) To je první věc, která vás napadne. No, takže vše je jednoduché, přečtěte si příspěvek ještě jednou nebo dvakrát a uspějete!!!

    Odpovědět
    Zlo odpovědělo Pá, 18. 12. 2015 - 07:00

    HNĚV
    Ty zadolbali kopírovat stejné články! Vymyslete něco vlastního, nebo alespoň změňte kód v článku!

    Odpovědět
    ollserg odpověděl dne Pá, 18. 12. 2015 - 14:28

    ČTENÁŘI JIŽ POKUSILI ZMĚNIT KÓD TOHOTO FORMULÁŘE
    Měli otázky týkající se nefunkčnosti tohoto kódu.
    Můžete si přečíst v komentářích výše.
    Další otázkou je, že mnozí (neexistují přesné statistiky) bezmyšlenkovitě kopírují a vkládají kód tohoto článku na své webové stránky, aniž by si jej pozorně přečetli. Záměrně jsem zkopíroval kód formuláře zpětné vazby ze svého webu a v článku uvedl místa v kódu, která je třeba změnit na vlastní. A kolik dopisů ze stránek mi přišlo na poštu, dokud jsem neopravil adresu v kódu?! Nebyly jich stovky, jen desítky.

    Odpovědět
    svbel odpověděl dne Čt, 02.06.2016 - 10:11

    CHYBA PŘI ODESÍLÁNÍ POŠTY
    Co znamená zpráva „Při pokusu o odeslání pošty došlo k chybě. Funkci pošty nelze spustit.“?

    Odpovědět
    ollserg odpověděl ve čtvrtek, 02.06.2016 - 10:54

    NELZE SPUSTIT FUNKCI POŠTY.
    Důvodů může být mnoho. Podívejte se na protokoly, poštovní doména uvedená ve FormIt a pošta existují a fungují normálně?
    Zeptejte se na podporu svého poskytovatele hostingu. Obecně na vaši otázku neexistuje definitivní odpověď.

    Odpovědět
    Denis odpověděl ve St, 15.06.2016 - 15:53

    NEDÁVEJTE DOPISY NA MAIL
    Dobré odpoledne Udělal jsem formulář podle vašeho popisu, vše funguje, přesune se na stránku s poděkováním, ale na mail nic nepřijde
    Hostovaný web. Teoreticky je vše v kodexu norem

    Řekni mi, v čem je problém? Děkuji!

    Odpovědět
    ollserg odpověděl dne Pá, 17. 6. 2016 - 12:17

    ZPĚTNÁ VAZBA MODX 100% SPRÁVNÁ. NÁSLEDUJ INSTRUKCE.
    Přečtěte si pozorně článek. Všimněte si kousku

    konkrétně řádek #4 - &emailTo=` [e-mail chráněný]` [e-mail chráněný] změnil jsi to na svou e-mailovou adresu?
    Zadejte data poštovních serverů yandex.ru, gmail.com nebo čehokoli jiného. Pokud to fungovalo, pak je problém vaší pošty na hostingu, kde se nachází vaše stránky. Pomůže vám komunikace s podpůrnou službou poskytovatele hostingu.

    Odpovědět
    Denis odpověděl v Út, 28.06.2016 - 15:05

    MAIL.RU
    Dobré odpoledne Všiml jsem si takového problému, že pokud do formuláře zadáte mail mail.ru (ostatní: Yandex, Google atd., aby vás kontaktovali), pak tato zpráva nepřijde na poštu správci webu.
    Možná někdo narazil? Možná je ve Formitu omezení pro poštovní schránky?

    Díky předem!

    Odpovědět
    Timothygreby odpověděl v úterý, 11. 10. 2016 - 13:40

    ORGAZM ONLINESOT
    Také mě tato problematika znepokojuje. Řekněte mi, kde si o tom mohu přečíst?

    orgazm-online.org

    Odpovědět
    SpS odpověděl út, 18. 10. 2016 - 15:39

    INSTALACE SAMS2 NA FREEBSD
    Instalace SAMS2 na FreeBSD 10.1, Squid 3.4 s autorizací NTLM

    http://www.grayfort.com/2015/01/sams2-freebsd-101-squid-34-ntlm.html

    Odpovědět
    lomaster odpověděl dne Út, 8. 11. 2016 - 02:35

    REMONTOKNA.COM.UA
    Stále populárnější je vytvářet interaktivní webové stránky pomocí technologie AJAX. A opravdu, proč nutit uživatele znovu načíst celou stránku, pokud existuje příležitost to neudělat. To platí zejména pro mobilní zařízení. Mnoho webů používá pro komunikaci s klientem formulář pro zpětnou vazbu. Vezmeme pravidelný tvar a uděláme z něj Ajax.

    Odpovědět
    MaryMJ odpověděl ve čtvrtek, 15.12.2016 - 20:27

    O INZERCI NA VAŠEM WEBU
    Ahoj! Jmenuji se MaryMarkova, naše společnost potřebuje inzerovat na vašem webu. jaké jsou vaše ceny? Děkuji. S pozdravem Mary.

    Odpovědět
    Rachelboymn odpověděl Pá, 23. 12. 2016 - 18:27

    XRUMER 16.0 JE NEJLEPŠÍ SOFTWARE pro SEO
    Nový XRumer 16.0 – revoluce v online propagaci: umělá inteligence vám pomůže přilákat zákazníky tak efektivně, více než kdy jindy!


    Zbývá nám pouze jedna stránka, kterou jsme ještě nepředělali. Tato stránka Kontakty. Zde kromě kontaktních údajů budeme mít formulář pro zpětnou vazbu. V MODx je pro vytvoření takového formuláře speciální snippet - eForm . Podívejme se nejprve na to, z čeho se může formulář zpětné vazby obecně skládat.

    1. V první řadě se jedná o samotný formulář se vstupními poli název, Poštovní adresa, Témata zpráv a on sám Zprávy. Pro ochranu před spamem byste měli přidat captcha – formulář pro zadání kódu z vygenerovaného obrázku. Je také nutné umožnit validaci zadaných informací.

    2. Oznámení návštěvníkovi, že byla odeslána zpráva.

    3. Forma odeslané zprávy, která přijde na mail.

    Vytvořte blok pomocí šablony formuláře zpětné vazby

    Před vytvořením bloku se šablonou pro formulář zpětné vazby se podívejme na kód, který tento formulář popisuje v naší šabloně. Otevřete soubor v programu Notepad++ kontakt.html který se nachází ve složce C:/xampp/htdocs/site/www/assets/templates/templatemo_250_chess/. To budou čáry 135 Podle 159 včetně. Jak vidíte, jedná se o kontejner s id="contact_form", který obsahuje náš formulář. Na základě tohoto kódu vytvořte nový blok form-tpl a přidejte zástupné symboly, které potřebujeme:

    Zpětná vazba


    [+validační zpráva+]







    Zadejte tento kód:





    Kde [+validační zpráva+]- Zodpovědnost za zobrazování chybových hlášení při vyplňování při odesílání formuláře.
    action="[~[*id*]~]- označuje, že stránka, na které je volán úryvek, bude manipulátorem formuláře. Místo [~[*id*]~] MODx nahradí URL aktuálního dokumentu.
    určuje id formuláře, které uvedeme při volání snippetu.
    přístupový klíč štítku- nastavuje přístup k prvkům formuláře pomocí klávesových zkratek.
    eform="E-mailová adresa:email:1"- popisuje pole pro zadání poštovní adresy, označuje typ zadávaných údajů a činí toto pole povinným. Obecně je šablona pro vyplnění tohoto parametru následující: eform="[popis pole]:[typ vstupních dat]:[je pole povinné]:[chybová zpráva vstupu]:[pravidlo ověření vstupu]" . Potřebujeme ale jen tři hodnoty. Podobně jako u tohoto parametru se vyplňuje eform="Name::1".
    [+verimageurl+] je zodpovědný za zobrazení captcha.

    Vytvořte blok, který bude návštěvníka informovat o odeslání zprávy

    Vytvořte kus děkuji-tpl

    Děkujeme, že jste použili formulář zpětné vazby na našem webu.

    Vaše zpráva bude zvážena co nejdříve, a pokud bude vyžadovat odpověď, určitě ji dostanete.


    Informace odeslány:



    • Tvé jméno:[+autor+]

    • Tvůj e-mail:[+e-mail+]

    • Text zprávy:[+text+]

    Vytvořte blok s formulářem odeslané zprávy

    Vytvořte kus report-tpl a do jeho obsahu vložte následující kód:

    Tuto zprávu odeslal návštěvník jménem [+author+] pomocí formuláře zpětné vazby.






    Název:[+autor+]
    E-mailem::[+e-mail+]
    Zpráva:[+text+]

    V tomto bloku, stejně jako v předchozím, jsou všechny informace zadané uživatelem přenášeny pomocí zástupných symbolů ve tvaru [+autor+]. V tomto případě název každého zástupného symbolu odpovídá hodnotě atributu "name" odpovídajícího pole v bloku s formulářem zpětné vazby (name="author", name="email" name="text").

    Vytvořte blok s voláním formuláře zpětné vazby

    Vytvořte blok s názvem formulář a vložte tam strukturu:

    [!eform? &formid=`Odeslat` &tpl=`form-tpl` &to=` [e-mail chráněný],[e-mail chráněný],[e-mail chráněný]` &mailselector=`otdel` &report=`report-tpl` &thankyou=`thank-tpl` &vericode=`1` &subject=`Zpráva z mého webu`!]

    Kde &formid=`Odeslat`- identifikátor formuláře, který jsme zadali v bloku form-tpl
    &tpl=`form-tpl`- šablona formuláře zpětné vazby
    &to=` [e-mail chráněný],[e-mail chráněný],[e-mail chráněný]` - E-mailová adresa pro zasílání informací
    &mailselector=`oddělení`- nastavuje pole formuláře, které se použije při výběru jedné adresy ze seznamu adres oddělených čárkou (,) v parametru &na. V našem případě se jedná o rozbalovací seznam.

    [[!+fi.error.name]]
    [[!+fi.error.phone]]
    [[!+fi.error.email]]
    [[!+fi.error.message]]

    Při analýze kódu přejděte shora dolů:

    &hooks - jsou zde přidány různé háčky, včetně těch, které si sami napsali: v našem případě 2 standardní: span - jednoduchá ochrana proti spamu a email - povinný, pro odesílání dat do schránky. O zbytku háčků mluvím dostatečně podrobně ve videu.

    &emailTpl - blok s písmenem, má následující kód:

    Od: [[+jméno]]

    Telefon: [[+telefon]]

    E-mail: [[+e-mail]]

    Zpráva: [[+zpráva]]

    &emailTo - e-mailová adresa, na kterou se odesílají formuláře, v tomto případě je zadáno systémové nastavení (klíč) ++emailsender

    &emailSubject – předmět odesílaného e-mailu

    &validovat – předepisujeme povinná pole k vyplnění a často pole na ochranu před spamem

    &successMessage - zpráva po úspěšném odeslání

    Kód formuláře nebudu rozebírat, pro zájemce se podívejte na video a přečtěte si dokumentaci: docs.modx.com/extras/revo/formit

    Připojování souborů k formuláři

    Abyste mohli přikládat a odesílat přílohy, musíte se zaregistrovat ve formulářové značce

    Enctype="multipart/form-data"

    a podle toho přidejte pole pro přílohu souboru

    [[!+fi.error.upload]]

    Obsluha zaškrtávacích políček a možností

    Více formulářů na jedné stránce

    Stačí napsat výzvy každého formuláře

    &submitVar=`název formuláře v angličtině`

    každá forma má svůj vlastní název.

    Bojujte proti spamu

    Ať se vám to líbí nebo ne, ale se spamem se určitě setkáte – nejúčinnější způsob, jak se s ním vypořádat – můžete také vyzkoušet.

    Téměř všechny komerční weby mají kontaktní stránku, která obsahuje kontaktní formulář, přes který mohou uživatelé psát do administrace webu. Dnes se podíváme na to, jak rychle vytvořit kontaktní formulář. Formulář zpětné vazby implementujeme pomocí balíčku formát spojené s balíčkem Formulář Ajax, nainstalujte je, pokud je nemáte nainstalované.

    Vytvoření formuláře zpětné vazby na MODX Revo s povolením ke zpracování osobních údajů v souladu se zákonem č. 152-FZ „O osobních údajích“ ze dne 27. července 2006.

    Nejdříve si vytvoříme chunk, do kterého se bude ukládat samotný formulář, ať je to ten chunk "kontakt-form" a dáme do něj kód standardního formuláře, já dělám hlavně weby pomocí bootstrapu, takže vezmu standardní šablona mírně pozměněna, její statický kód bude vypadat takto:

    Uživatelská smlouva

    Váš vzhled bude jiný, protože můj formulář je stylizovaný pro projekt, nevidím smysl v rozvržení stylů css.

    Další formuláře si můžete prohlédnout zde getbootstrap.com/css/#forms

    A nyní předělejme kód na dynamický s přihlédnutím k syntaxi formát A Formulář Ajax, dostaneme následující.

    [[+fi.error.name]]
    [[+fi.error.email]]
    [[+fi.error.pfone]]
    [[+fi.error.message]]

    Zaškrtnutím tohoto políčka uděluji svůj souhlas se zpracováním mých osobních údajů v souladu se zákonem č. 152-FZ „O osobních údajích“ ze dne 27. července 2006 a souhlasím s podmínkami uživatelské smlouvy.

    [[+fi.success:is=`1`:then=`
    [[+fi.successMessage]]
    `]] [[+fi.validation_error:is=`1`:then=`
    [[+fi.validation_error_message]]
    `]]

    Nyní vytvoříme další kus, který bude tvořit písmeno, nazvěme jej tpl-contact-form s následujícím obsahem:

    Jméno: [[+jméno]]

    E-mail: [[+email]]

    Telefon: [[+pfone]]

    Zpráva: [[+zpráva]]

    No, začalo to dělat závěr na správném místě:

    [[!AjaxForm? &snippet=`FormIt` &form=`kontakt-form` &emailTpl=`tpl-kontakt-form` &hooks=`spam,email` &emailSubject=`Zpráva z webu [[++site_url]]` &emailTo=` [e-mail chráněný]` &validate=`jméno:požadováno,e-mail:požadováno` &validationErrorMessage=`Formulář obsahuje chyby!` &successMessage=`Zpráva byla úspěšně odeslána!` ]]

    Nezapomeňte změnit hodnotu emailTo na vaši poštu.

    Dokumentace součásti:

    1. FormItdocs.modx.com/extras/revo/formit
    2. Formulář Ajaxdocs.modx.pro/components/ajaxform

    To je v podstatě vše!

    Chcete-li vytvořit formulář na Modx bez spamu, musíte jej vytvořit s dalšími neviditelnými poli:

    1. Stažení a instalace komponent Ajaxform a Formit

    2. Formulář se nazývá velmi jednoduše, musíte na to přijít

    [[!AjaxForm? &snippet=`FormIt` &form=`tpl.AjaxForm..ru ` &emailTo=`info@site` &validate=`name:required,email:required,message:required,work-email:blank` &validationErrorMessage=`Formulář obsahuje chyby !` &successMessage=`Děkujeme za odeslání! Brzy vás budeme kontaktovat.` &emailTpl=`mailtpl` ]]

    Nebo přes šablonový engine Fenom, jako je tento:

    ($_modx->runSnippet("!AjaxForm", [ "snippet" => "FormIt", "form" => "tpl.AjaxForm.example", "hooks" => "e-mail,spam" "emailFrom" => " [e-mail chráněný]", "emailSubject" => "Přihláška z daruse.ru", "emailTo" => " [e-mail chráněný]", "validate" => "jméno:vyžadováno,e-mail:požadováno,zpráva:požadováno,pracovní-e-mail:prázdný", "validationErrorMessage" => "Formulář obsahuje chyby!", "successMessage" => "Děkujeme za odeslání! Brzy se vám ozveme.", "emailTpl" => "mailtpl", ]))

    Popis parametrů:

    • snippet - snippet pro zpracování AjaxFormu, nastavte Formit - ten prostě posílá emaily
    • form - form design chunk, je to ten, který je ve výchozím nastavení
    • hooks - ochrana proti spamu
    • emailFrom - adresa, ze které dopis přichází
    • emailTo - adresa, na kterou je dopis doručen
    • validate - validace, jsou zde také dvě neviditelná pole
    • validationErrorMessage – zpráva, která se zobrazí v případě neúspěšného zadání polí
    • successMessage – zpráva, která se zobrazí po úspěšném odeslání zprávy
    • emailTpl - blok, který ukládá šablonu příchozího dopisu na poštu (přečtěte si o něm níže)

    3. Poté přejdeme k našemu bloku návrhu formuláře, v tomto případě je to tpl.AjaxForm.example a přidáme následující dvě pole za značku formuláře.

    ...

    Nyní by spam neměl projít vaším formulářem kvůli dvěma novým polím.

    4. Vzhled příchozího dopisu

    Standardně přijde dopis na poštu bez jakéhokoli formátování v nepříliš čitelném formátu. Pojďme si proto náš dopis trochu ozdobit příkladem.

    Šablona e-mailu je jednoduchý kus, který zadáme v parametru emailTpl, zde je vše velmi jednoduché, napíšu příklad designu. Pokud máte dotazy, pište do komentářů.

    mailpl:

    Na stránce [[++site_url]] opustil aplikaci.

    [[+jméno:notempty=`

    Jméno: [[+jméno]]

    `]] [[+email:notempty=`

    Mail: [[+email]]

    `]] [[+message:notempty=`

    Zpráva: [[+zpráva]]

    `]]

    Kontaktujte ho prosím co nejdříve.

    Na tento e-mail prosím neodpovídejte, protože je automatický.

    Přečtěte si o vytváření a ochraně proti spamu.