Vadovai

Kaip pridėti kontaktų formą prie svetainės (kuri iš tikrųjų pasiekia jus)

Norėdami pridėti veikiančią kontaktų formą, sukurkite trumpą formą (vardas, el. paštas, žinutė), siųskite ją į serverio maršrutą, kuris patikrina įvestį, išsaugo žinutę duomenų bazėje, ir tada per el. pašto teikėją, naudodamas slaptą API raktą, atsiunčia jums pranešimą. Pridėkite paslėptą spąstų lauką (honeypot) ir užklausų ribojimą, kad sustabdytumėte daugumą šlamšto, parodykite aiškų sėkmės pranešimą ir išbandykite visą kelią publikuotoje svetainėje. Svarbiausia – išsaugoti prieš siunčiant el. laišką: jei el. paštas kada nors sugestų, užklausa vis tiek lieka.

Jūsų variantai

VariantasKaip veikiaTinkaKompromisai
Mailto nuoroda„Parašykite mums“ atidaro lankytojo pašto programąAsmeninėms svetainėmsNeveikia daugelyje įrenginių; atskleidžia jūsų adresą robotams
Talpinama formų paslaugaForma siunčia duomenis trečiosios šalies paslaugai, kuri jums atsiunčia el. laiškąStatinėms svetainėms be serverio daliesKita paskyra; apribojimai ir prekės ženklas nemokamuose planuose
Įterptas formų įrankisFormų kūrimo įrankio valdiklis įterptas į jūsų puslapįSudėtingoms apklausoms, greitai sąrankaiNeatitinka jūsų dizaino; duomenys saugomi kitur
Jūsų pačių forma + duomenų bazė + el. paštasJūsų serveris išsaugo ir pranešaDaugeliui programėlių ir verslo svetainiųTurite nustatyti el. pašto teikėją

Jei jūsų svetainė jau turi serverio dalį ir duomenų bazę – o programėlės, sukurtos DI programėlių kūrimo įrankiais, dažnai turi – paskutinis variantas yra patikimiausias ir laiko užklausas ten, kur jas matote.

Ką įtraukia gera kontaktų forma

  • Kuo mažiau laukų. Vardas, el. paštas, žinutė. Temos išskleidžiamąjį sąrašą („Pardavimai“, „Palaikymas“, „Kita“) pridėkite tik tada, jei pagal jį nukreipsite žinutes.
  • Aiškios etiketės virš kiekvieno lauko, o ne vien vietos rezervavimo tekstas, kuris dingsta.
  • Naudingas tikrinimas: „Įveskite galiojantį el. pašto adresą“, rodomas šalia lauko.
  • Sėkmės būsena, kuri pasako, kas bus toliau: „Ačiū – atsakysime per vieną darbo dieną.“
  • Privatumo pastaba, nurodanti, kaip naudosite duomenis, su nuoroda į privatumo politiką.
  • Atsarginis kelias, pavyzdžiui, jūsų el. pašto adresas ar telefono numeris, tiems, kas to pageidauja.

Pavyzdiniai raginimai

Pagrindinė forma:

Pridėkite kontaktų formą Kontaktų puslapyje su vardu, el. paštu ir žinute (visi privalomi, žinutė iki 2000 simbolių). Siųskite į serverio maršrutą, kuris patikrina įvestį, išsaugo ją lentelėje contact_messages su gavimo laiku ir parodo sėkmės pranešimą: „Ačiū, atsakysime per vieną darbo dieną.“ Rodykite lauko klaidas tiesiai šalia laukų. Užtikrinkite, kad forma gerai veiktų telefonuose.

El. pašto pranešimai:

Kai kontaktų žinutė išsaugoma, siųskite man pranešimo el. laišką adresu hello@example.com naudodami Resend, su raktu RESEND_API_KEY. Nustatykite reply-to į siuntėjo el. paštą, kad galėčiau atsakyti tiesiogiai. Jei siuntimas nepavyksta, išsaugokite žinutę ir įrašykite klaidą į žurnalą, neatskleisdami rakto.

Apsauga nuo šlamšto:

Pridėkite apsaugą nuo šlamšto kontaktų formai: paslėptą spąstų lauką, kuris turi likti tuščias, serveryje limitą 5 pateikimus iš vieno IP per valandą, ir atmeskite žinutes, kuriose daugiau nei 3 nuorodos. Spąstų lauko pateikimus tyliai atmeskite, bet vis tiek rodykite sėkmę.

Gautieji:

Pridėkite administravimo puslapį, apsaugotą slaptažodžiu, kuriame rodomos kontaktų žinutės, naujausios pirmos, su žymės langeliu „apdorota“ ir filtru neapdorotoms žinutėms.

Žingsnis po žingsnio

  1. Nuspręskite, kur keliauja žinutės: kas gauna pranešimus ir kas atsako.
  2. Sukurkite formą su aukščiau nurodytais laukais, prieinamomis etiketėmis ir mobiliesiems draugiškais įvesties laukais (naudokite el. pašto įvesties tipą, kad telefonuose būtų rodoma tinkama klaviatūra).
  3. Sukurkite serverio maršrutą. Jis tikrina privalomus laukus, el. pašto formatą ir ilgio ribas. Niekada nepasitikėkite vien naršyklės tikrinimu.
  4. Pirmiausia išsaugokite duomenų bazėje. Žr. kaip pridėti duomenų bazę prie programėlės.
  5. Nustatykite el. pašto teikėją. Sukurkite paskyrą, patvirtinkite siuntimo domeną ir API raktą saugokite kaip paslaptį. Kaip siųsti el. laiškus iš programėlės detaliai aprašo domeno nustatymą (SPF, DKIM).
  6. Siųskite pranešimą iš serverio po išsaugojimo. Kaip siuntėją naudokite patvirtintą savo domeną, o reply-to – lankytojo adresą. Nenurodykite lankytojo adreso kaip siuntėjo, nes tai greičiausiai bus atmesta kaip klastojimas.
  7. Pasirinktinai automatiškai atsakykite lankytojui, bet trumpai; automatiniai atsakymai šlamšto adresams gali pakenkti jūsų siuntėjo reputacijai.
  8. Pridėkite apsaugą nuo šlamšto: spąstus, užklausų ribojimą, tada CAPTCHA tipo patikrinimą, jei reikia.
  9. Išbandykite publikuotoje svetainėje: pateikite formą, patikrinkite duomenų bazę, gautuosius ir šlamšto aplanką, paspauskite atsakyti.

Šlamšto sustabdymas

Kontaktų formos pritraukia robotus per kelias dienas nuo paleidimo. Sluoksniuokite apsaugą nuo mažiausiai iki labiausiai įkyrios:

  1. Spąstų laukas (honeypot). Laukas, paslėptas nuo žmonių; robotai jį užpildo. Tikriems lankytojams tai nieko nekainuoja.
  2. Serverio pusės užklausų ribojimas. Riboja, kiek žinučių vienas adresas gali išsiųsti per laikotarpį.
  3. Turinio taisyklės. Atmeskite žinutes, prikimštas nuorodomis, arba su tuščiu ar absurdiškai ilgu žinutės lauku.
  4. CAPTCHA tipo patikrinimas, pavyzdžiui, Cloudflare Turnstile ar Google reCAPTCHA. Žetonas turi būti patikrintas jūsų serveryje; patikrinimas, vykstantis tik naršyklėje, gali būti praleistas.

Dažnos klaidos

  • „Išsiųsta!“ rodymas, nors nieko neišsiųsta. Sąsaja rodo sėkmę prieš serverio atsakymą arba nepaisydama jo. Visada laukite serverio.
  • Tik el. paštas, be duomenų bazės. Vienas neteisingai sukonfigūruotas raktas – ir užklausos dingsta savaitėms, o niekas to nepastebi.
  • API raktas frontend kode. Bet kas gali juo siųsti el. laiškus jūsų vardu.
  • Nepatvirtintas siuntimo domenas. Pranešimai patenka į šlamštą arba visai nepasiekia.
  • Siuntimas „nuo“ lankytojo el. pašto. Vietoj to naudokite reply-to.
  • Jokių ilgio ribų. Robotai įklijuoja didelius teksto blokus.
  • Niekada netestuojama tiesioginė svetainė. Raktai ir domenai dažnai skiriasi tarp peržiūros ir produkcijos.

Kontrolinis sąrašas

  • Trumpa forma su matomomis etiketėmis ir aiškiomis klaidomis
  • Serverio pusės tikrinimas ir ilgio ribos
  • Kiekviena žinutė išsaugoma duomenų bazėje
  • Pranešimo el. laiškas siunčiamas iš patvirtinto domeno, su nustatytu reply-to
  • El. pašto API raktas saugomas tik serverio pusės paslaptyse
  • Veikia spąstų laukas ir užklausų ribojimas
  • Sėkmės pranešimas pasirodo tik tada, kai serveris patvirtina
  • Privatumo pastaba nukreipia į jūsų privatumo politiką
  • Išbandyta visame kelyje publikuotoje svetainėje, įskaitant šlamšto aplanką

Kontaktų formos Mythex

Mythex viską galite sukurti per pokalbį. Paprašykite formos ir duomenų bazės tame pačiame raginime (arba įveskite /database), kad pateikimai išliktų. Mythex neturi įmontuoto el. laiškų siuntimo produkto, todėl pranešimams naudojate teikėją, pavyzdžiui, Resend, SendGrid ar Postmark, įvedate jo raktą per /secrets ar projekto nustatymus ir prašote agento siųsti iš serverio – žr. Siųsti el. laišką iš savo programėlės. Prieš pasikliaudami, paleiskite programėlės testavimą (/test) su forma peržiūroje, tada publikuokite ir išbandykite tiesioginiu URL.

Kontaktų forma yra svarbi mažų verslų svetainių ir nukreipimo puslapių dalis. Prieš paleidimą patikrinkite saugumo kontrolinį sąrašą.

Klausimai

Kaip padaryti, kad kontaktų forma siųstų man el. laišką?

Forma siunčia duomenis į serverio maršrutą, kuris išsaugo žinutę ir tada atsiunčia jums pranešimą per el. pašto teikėją, pavyzdžiui, Resend, SendGrid ar Postmark, naudodamas API raktą, saugomą kaip serverio pusės paslaptį. Vien naršyklė patikimai siųsti el. laiškų negali.

Kodėl negaunu kontaktų formos el. laiškų?

Dažniausios priežastys: trūksta ar neteisingas API raktas, nepatvirtintas siuntimo domenas, pranešimai patenka į šlamštą arba forma rodo sėkmę, nors serverio iškvietimas neveikia. Visų pranešimų pirmiausia išsaugojimas duomenų bazėje reiškia, kad žinutės neprarandamos, kol taisote el. paštą.

Kaip sustabdyti kontaktų formos šlamštą?

Pradėkite nuo paslėpto spąstų lauko (honeypot) ir užklausų ribojimo serveryje. Jei šlamštas tęsiasi, pridėkite CAPTCHA tipo patikrinimą, pavyzdžiui, Cloudflare Turnstile ar Google reCAPTCHA, patikrinamą serveryje.

Ar turėčiau naudoti mailto nuorodą vietoj formos?

Mailto nuoroda paprasta, bet atidaro lankytojo el. pašto programą, o tai neveikia daugeliui žmonių bendrai naudojamuose ar darbo kompiuteriuose ir atskleidžia jūsų adresą šlamšto robotams. Forma patikimesnė lankytojams ir leidžia kontroliuoti laukus, kuriuos gaunate.

Mythex · Pricing · Kurkite bet ką su dirbtiniu intelektu · Svetainių ir programėlių šablonai · Mythex palyginimas · Programėlių kūrimo su dirbtiniu intelektu žodynėlis · Nemokami programėlių kūrimo su dirbtiniu intelektu įrankiai · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)