Gravity Forms, et rocketgenius-produkt, er en omfattende formløsning for WordPress. Enhver utvikler vil fortelle deg at å bygge et skjema kan noen ganger være veldig tidskrevende, spesielt hvis det trenger å gjøre mer enn å håndtere en melding.
Hva om du trenger et skjema som registrerer brukere til nettstedet ditt basert på bestemte kriterier? Eller hva om du trenger et skjema som lar en bruker legge inn innhold på nettstedet ditt, fra et front-end-perspektiv? Gravity Forms kan gjøre alt dette, og hva det ikke kan gjøre utenom boksen, kan du bygge deg selv ved å bruke sine innebygde kroker og filtre.
Før jeg diskuterer hvordan Gravity Forms kan utvide WordPress-installasjonen, er det viktig å merke seg at Gravity Forms er et premium plugin. For å få noen av de godbitene som diskuteres i dette innlegget, trenger du minst en Business License for Gravity Forms, men jeg anbefaler på det sterkeste utviklerlicensen, da det gir mest penger for pengene dine. Nå som vi har avgjort det, la oss ta en titt på noen måter Gravity Forms kan utvide et WordPress-nettsted.
Det er mulig å legge til flere felt i registreringsskjemaet ditt ved å legge til kode i din functions.php fil, men du kan unngå å bruke for mye tid under hetten ved å la Gravity Forms gjøre tung løfting. Å skape brukere og tildele brukerroller med Gravity Forms er enkelt, du oppretter bare et skjema, matcher feltene dine med WordPress standardfeltene og velger brukerrollen som skal tildeles ved innsending. Du kan også ha flere "registreringer" for samme skjema.
Et eksempel på hvordan Gravity Forms kan utvide brukerregistreringsprosessen er med betinget registrering. For eksempel, hvis du har et medlemskaps nettsted som bare tillater folk med "@ xyz.com
'og'@ abc.com
'e-postadresser for å registrere, kan du legge til registreringsfeeder som bare lager og tilordner brukerne roller basert på om de oppfyller disse kriteriene, mens de ikke tillater andre å registrere seg.
Denne betingede logikken går langt utover brukerregistreringen, du kan opprette betingede felt innenfor hvilken som helst form. Hvis du for eksempel vil vise flere felt til en bruker basert på aldersgruppen, kan du tilpasse feltet ved å velge for å vise (eller eventuelt å skjule) andre felter basert på deres svar.
Hvis du vil ha en mer robust frontend for brukerne, kan Gravity Forms være en god løsning ved å la brukerne legge inn innhold til innlegg direkte. Alt du trenger å gjøre er å lage et skjema som bruker funksjonen innebygd postfelt. Disse postfeltkartene til standardposttittel, kroppsinnhold, utdrag, funksjonsbilde, kategori og tag. Gravity Forms kartler også skjema data til egendefinerte felt. Slik kartlegger du innholdet ditt i et egendefinert felt:
Ser du ikke ditt tilpassede felt som er oppført i rullegardinmenyen? Gå tilbake til innleggene dine og opprett et "utkast" som inneholder innhold i det egendefinerte feltet og lagre det. Gå deretter tilbake til Gravity Form og sjekk igjen.Når Gravity Forms brukes i forbindelse med plugin, Gravity Forms + Custom Post Types, tilbyr kombinasjonen enda mer funksjonalitet ved å la formdata bli kartlagt til egendefinerte innleggstyper, derav navnet på plugin. Hvis du er bekymret for å installere for mange plugins - og trenger bare støtte for egendefinerte taksonomier - kan du alltid legge til støtte manuelt ved å koble til Gravity Forms via din functions.php fil.
Gravity Forms kommer med omfattende dokumentasjon. Hvis du kan drømme det, kan du nok gjøre det. Det er flere kroker og filtre du kan dra nytte av, og den beste delen er at du kan tilordne dem til individuelle skjemaer. Anta at du ville tillate brukere å sende inn innlegg til nettstedet ditt, men du ønsket å kontrollere tittellengden, du kan opprette egendefinert valideringslogikk for å begrense lengden på inngangen. Se eksempel.
add_filter ('gform_validation_7', 'title_size'); funksjon title_size ($ validation_result) $ form = $ validation_result ["form"]; // forutsatt at vi ikke vil at input_3 skal være lengre enn 75 tegn. hvis (strlen ($ _POST ['input_3'])> 75) // sett form validering til false $ validation_result ["is_valid"] = false; // finn felt med ID vi leter etter og merker det som mislykket validering foreach ($ form ["fields"] som & $ felt) // erstatt 3 med feltet id-nummeret du validerer om ($ field [ "id"] == "3") $ field ["failed_validation"] = true; $ field ["validation_message"] = "Tittel er for lang."; gå i stykker; // endre objekt tilbake til resultatet $ validation_result ["form"] = $ form; returner $ validering_result; ?>
Den første delen av koden bruker filteret for Gravity Forms validering og skaper en funksjon som tester lengden på feltet i spørsmålet. Vær oppmerksom på tallene 7 og 3 i denne koden. 7 betegner skjema-ID og 3 betegner den faktiske inngangs-ID som blir testet.
Gravity Forms-dokumentasjonen inneholder en liste over tilgjengelige kroker og filtre, samt detaljerte eksempler for hver enkelt. Noen ganger kan du til og med se når / hvorfor du kanskje trenger dem.
Hvis du leter etter en utelukkende formløsning som gjør mer enn å sende en e-post, er Gravity Forms et flott alternativ - og tidsbesparende. Mulighetene er ubegrensede. For de som diskuterer eller på gjerdet om bruk av Gravity Forms på grunn av kjøpesummen, kan det virke høyt, men fordelene og utviklingen som er lagret ved å bruke Gravity Forms, betaler seg selv.