Forme solide cu forme de gravitate

Gravity Forms, un produs rocketgenius, este o soluție cuprinzătoare pentru WordPress. Orice dezvoltator vă va spune că construirea unui formular poate fi uneori foarte intensă, mai ales dacă are nevoie să facă mai mult decât să se ocupe de un mesaj.

Ce se întâmplă dacă aveți nevoie de un formular care să înregistreze utilizatorii pe site-ul dvs. pe baza anumitor criterii? Sau dacă ai nevoie de un formular care să permită unui utilizator să posteze conținut pe site-ul tău, dintr-o perspectivă frontală? Gravity Forms poate face toate acestea, și ceea ce nu poate face out-of-the-box vă puteți construi, folosind cârligele și filtrele sale construite.

Înainte de a discuta despre modul în care Gravity Forms poate extinde instalarea WordPress, este important să rețineți că Gravity Forms este un plugin premium. Pentru a obține unele dintre bunele discuții discutate în acest post, veți avea nevoie de cel puțin o licență de afaceri pentru formularele gravitaționale, dar recomand cu tărie licența pentru dezvoltatori, deoarece vă oferă cea mai mare forță pentru buge. Acum că am stabilit acest lucru, să aruncăm o privire la câteva moduri în care Gravity Forms poate extinde un site WordPress.


Extindeți Formularele de înregistrare a utilizatorilor

Este posibil să adăugați câmpuri suplimentare în formularul de înregistrare adăugând codul dvs. functions.php fișier, dar puteți evita să cheltuiți prea mult timp sub capotă, permițând Gravity Forms să facă ridicarea greoaie. Crearea de utilizatori și atribuirea rolurilor utilizatorilor cu formularele Gravity este ușoară, pur și simplu creați un formular, potriviți câmpurile cu câmpurile implicite WordPress și alegeți rolul de utilizator care va fi atribuit la trimitere. De asemenea, puteți avea mai multe "înregistrări" pentru același formular.

Un exemplu de modul în care Gravity Forms poate extinde procesul de înregistrare a utilizatorilor este cu înregistrarea condiționată. De exemplu, dacă aveți un site de membru care permite numai persoanelor cu "@ xyz.com' și '@ abc.com"adresele de e-mail pe care le puteți înregistra, puteți adăuga feeduri de înregistrare care creează și atribuie utilizatorilor roluri numai pe baza faptului că îndeplinesc acele criterii, fără a le permite altora să se înregistreze.

Această logică condițională depășește limita înregistrării utilizatorului, puteți crea câmpuri condiționate în orice tip de formular. De exemplu, dacă doriți să afișați câmpuri suplimentare unui utilizator pe baza grupului lor de vârstă, puteți personaliza câmpul selectând să afișați (sau opțional să ascundeți) alte câmpuri pe baza răspunsului acestora.


Utilizarea formularelor de gravitate pentru depunerea conținutului frontal

Dacă doriți un front-end mai robust pentru utilizatorii dvs., Gravity Forms poate fi o soluție excelentă, permițând utilizatorilor să trimită conținutul direct la postări. Tot ce trebuie să faceți este să creați o formă care utilizează caracteristica construită în câmpurile postare. Aceste câmpuri de posturi se referă la titlul postului implicit, conținutul corpului, fragmentul, imaginea caracteristică, categoria și eticheta. Gravity Forms, de asemenea, hărți datele formularului în câmpurile personalizate. Pentru a vă ghida conținutul într-un câmp particularizat:

Nu apare câmpul dvs. personalizat afișat în meniul derulant? Reveniți la postările dvs. și creați un "draft" care include conținutul în câmpul personalizat și salvați-l. Apoi, reveniți la formularul dvs. de gravitate și verificați din nou.

Atunci când se utilizează Gravity Forms împreună cu pluginul, Gravity Forms + Custom Post Types, combinația oferă și mai multă funcționalitate, permițând maparea datelor formularului la tipuri personalizate de posturi, de unde și numele pluginului. Dacă sunteți îngrijorat de instalarea prea multor pluginuri - și aveți nevoie doar de asistență pentru taxonomii personalizate - puteți adăuga întotdeauna suportul manual prin accesarea în Gravity Forms prin intermediul functions.php fişier.


Vorbind despre cârlige și filtre

Formularul Gravity vine cu o documentație extinsă. Dacă o puteți visa, probabil că o veți realiza. Există mai multe cârlige și filtre pe care le puteți profita și cea mai bună parte este că le puteți atribui formularelor individuale. Să presupunem că doriți să permiteți utilizatorilor să trimită postări pe site-ul dvs., dar doriți să controlați lungimea titlului, puteți crea logica de validare personalizată pentru a limita lungimea intrării. Vedeți exemplul.

 add_filter ('gform_validation_7', 'title_size'); funcția title_size ($ validation_result) $ form = $ validation_result ["formularul"]; // presupunând că nu dorim ca input_3 să fie mai mare de 75 de caractere. dacă (strlen ($ _POST ['input_3'])> 75) // setați validarea formularului la false $ validation_result ["is_valid"] = false; // găsiți câmpul cu ID căutăm și marcându-l ca nevalid pentru validare ($ form ["fields"] ca câmp & $) // înlocuiți 3 cu numărul de identificare de câmp pe care îl validați dacă (câmpul $ [ "id"] == "3") câmpul $ ["failed_validation"] = true; $ field ["validation_message"] = "Titlul este prea lung"; pauză;  // modificați obiectul înapoi la rezultatul $ validation_result ["form"] = $ form; return $ validation_result; ?>

Prima parte a codului folosește filtrul pentru validarea formularelor Gravity și creează o funcție care testează lungimea câmpului în cauză. Fiți atenți la numerele 7 și 3 din acest fragment. 7 indică ID-ul formularului și 3 indică ID-ul real de intrare care este testat.

Documentația Gravity Forms include o listă a cârligelor și a filtrelor disponibile, precum și exemple detaliate pentru fiecare - uneori chiar puteți vedea când / de ce ai putea avea nevoie de ele.


Concluzie

Dacă sunteți în căutarea unei soluții de formular în afara căsuței care trimite mai mult decât să trimită un e-mail, Gravity Forms este o opțiune excelentă și economizor de timp. Posibilitățile sunt nelimitate. Pentru cei care dezbat sau pe gardul despre folosirea formularelor gravitaționale din cauza prețului de cumpărare, poate părea mare, dar beneficiile și dezvoltarea programate salvate prin utilizarea formularelor Gravity plătesc pentru sine.

Cod