Hoofdstuk 6 van 13
Een website zonder formulier is een folder: mooi om naar te kijken, maar de bezoeker kan niets terugzeggen. Met een formulier kan een klant een vraag stellen, een taart bestellen of zich inschrijven. In dit hoofdstuk leer je werken met de twee formulierbouwers die op je site staan: het Formulier-widget van Elementor Pro en de plugin Gravity Forms.
Je leert velden toevoegen en instellen, bepalen wat er gebeurt na het verzenden (een mail, een bedankbericht, een doorverwijzing), inzendingen terugvinden en exporteren, en je formulier beschermen tegen spam. Op het einde weet je ook wanneer je welke van de twee kiest.
Waarom zijn formulieren zo belangrijk? Voor de meeste kleine bedrijven is het contactformulier de plek waar een bezoeker klant wordt. Een formulier dat niet werkt (de mail komt nooit aan), te lang is of er onbetrouwbaar uitziet, kost dus rechtstreeks klanten. En omdat een formulier persoonsgegevens verzamelt (naam, e-mail, telefoon), moet je ook aan de privacywet (GDPR) denken.
Een deel van de schermen van Elementor Pro, Gravity Forms en SEOPress is (nog) in het Engels, ook al staat je site in het Nederlands. In deze handleiding schrijven we de knoppen zoals je ze op je scherm ziet, met de Nederlandse uitleg erbij.
Deel A – Het formulier van Elementor Pro
Elementor Pro heeft een eigen widget Formulier (in het Engels “Form”). Je sleept het op je pagina zoals elke andere widget en stelt alles in via het paneel links. Op de demosite staat zo’n formulier op de pagina Contact. We bekijken het samen van boven tot onder.

A1. Het formulier openen in Elementor
- Ga naar Pagina’s → Alle pagina’s, ga met je muis over Contact en klik op Bewerk met Elementor.
- Klik in het canvas (rechts) op het formulier. Het krijgt een kader en links verschijnt het paneel Form bewerken.
- Bovenaan het paneel staan de drie vaste tabbladen: Inhoud (wat er in het formulier staat en wat het doet), Stijl (hoe het eruitziet) en Geavanceerd (marges, animaties, zichtbaarheid).
- Onder Form Fields zie je de lijst met velden (1): Naam, E-mail, Telefoon, Onderwerp, Bericht en Privacy. Elk veld is een balkje dat je kan openklikken.

Helemaal bovenaan staat ook Form Name (“Contact”). Die naam ziet de bezoeker niet, maar je vindt hem terug bij de inzendingen. Geef elk formulier dus een duidelijke naam, zeker als je er meerdere hebt (bijvoorbeeld “Contact” en “Inschrijving workshop”).
A2. Een veld instellen
Klik op een veld in de lijst, bijvoorbeeld Naam. Het klapt open en je ziet de instellingen van dat ene veld:
- Type (1): wat voor veld het is. De belangrijkste: Text (één regel tekst), Email (controleert of er een geldig e-mailadres staat), Textarea (een groot tekstvak voor een bericht), Tel (telefoonnummer), Select (keuzelijst), Radio (één keuze uit een paar rondjes), Checkbox (vinkjes, meerdere keuzes), Acceptance (één vinkje om akkoord te gaan), Number (getal), Date en Time (datum en uur) en File Upload (bestand opladen).
- Label (2): de titel boven het veld, bv. “Naam”.
- Placeholder (3): het grijze voorbeeldtekstje ín het veld, bv. “Je naam”. Het verdwijnt zodra de bezoeker begint te typen.
- Required (4): verplicht veld. Staat dit op Ja, dan kan de bezoeker het formulier niet versturen zonder dit veld in te vullen.
- Column Width (5): hoe breed het veld is. Met 50% passen er twee velden naast elkaar (zoals Naam en E-mail op de demosite), met 100% neemt het veld de hele breedte.

Klik je op de keuzelijst bij Type, dan zie je alle mogelijke veldsoorten. Naast de types hierboven vind je er ook Password, HTML (een stukje tekst of uitleg tussen de velden), Hidden (een verborgen veld), reCAPTCHA, reCAPTCHA V3 en Honeypot (twee soorten spambeveiliging, zie deel D) en Step (om een lang formulier in stappen te verdelen).

Kies altijd het juiste type. Een veld voor een e-mailadres moet echt het type Email hebben, niet Text. Dan controleert het formulier of er een @ in staat, krijgt een gsm-gebruiker meteen een toetsenbord met @-teken, en kan je later “antwoorden” op dat adres (zie A7). Hetzelfde geldt voor Tel: op een gsm verschijnt dan een cijfertoetsenbord.
In het veld zie je ook twee kleine tabbladen: Content (wat je hierboven zag) en Advanced. Onder Advanced kan je een standaardwaarde invullen en het ID van het veld zien. Dat ID heb je enkel nodig als je de mail zelf wil opmaken (zie A7).
A3. Een keuzelijst en een privacyvinkje
Sommige types hebben extra instellingen. Klik op het veld Onderwerp:
- Het type is Select (1): een keuzelijst.
- Bij Options (2) typ je de keuzes, elk op een aparte regel: Bestelling, Taart op maat, Andere vraag. De eerste regel is de keuze die standaard geselecteerd staat.
- Met Multiple Selection laat je de bezoeker meer dan één keuze maken. Voor een onderwerp is dat niet zinvol, dus dat blijft uit.

Het laatste veld, Privacy, is van het type Acceptance (1): één vinkje. Bij Acceptance Text (2) staat de zin naast het vinkje (“Ik ga akkoord met de privacyverklaring”). Omdat Required (3) op Ja staat, kan niemand het formulier versturen zonder het vinkje aan te klikken. Laat Checked by Default uit: een vinkje dat al aangevinkt staat, telt volgens de privacywet niet als echte toestemming.

Je kan in de Acceptance Text een link naar je privacyverklaring zetten. Selecteer het woord “privacyverklaring” en gebruik de link-knop, of typ zelf: Ik ga akkoord met de <a href="/privacyverklaring/">privacyverklaring</a>. Zo kan de bezoeker lezen waarvoor hij toestemming geeft. Meer daarover in deel D.
A4. Velden toevoegen, kopiëren, verwijderen en ordenen
- Met het kopieer-icoontje (1) naast een veld maak je er een kopie van, met dezelfde instellingen. Handig: wil je een tweede tekstveld met dezelfde breedte, kopieer dan een bestaand veld en pas enkel het label aan.
- Met het kruisje (2) verwijder je een veld.
- Met + Item toevoegen (3) zet je onderaan een nieuw, leeg veld. Klik het open en kies het type, het label enzovoort.
- De volgorde pas je aan door een veld met de muis op te nemen en naar boven of beneden te slepen.
- Onder de velden staan instellingen voor het hele formulier: Input Size (hoe groot alle velden zijn), Label (4) (labels tonen of verbergen) en Required Mark (5) (een sterretje * achter verplichte velden).

Zet Required Mark aan als niet alle velden verplicht zijn. Zo ziet de bezoeker meteen wat hij moet invullen en wat mag. En verberg de labels niet om plaats te winnen: een placeholder verdwijnt zodra je typt, waarna de bezoeker niet meer weet wat er in het veld hoorde. Ook voor schermlezers (blinde of slechtziende bezoekers) zijn labels nodig.
Hoeveel velden? Elk extra veld kost je inzendingen: hoe langer een formulier, hoe meer mensen halverwege afhaken. Vraag enkel wat je echt nodig hebt om de klant te helpen. Voor een contactformulier is dat meestal naam, e-mail en bericht. Een telefoonnummer kan handig zijn, maar maak het dan niet verplicht, zoals op de demosite.
A5. De knop
Klik op het kopje Buttons om de instellingen van de verzendknop te openen:
- Bij Submit (1) staat de tekst op de knop: “Verstuur”.
- Column Width (2) bepaalt hoe breed de knop is (hier 100%: over de hele breedte).
- Size (3) bepaalt hoe groot de knop is.

De kopjes Step Buttons (Next, Previous) gebruik je enkel bij een formulier in meerdere stappen. Dat laten we hier buiten beschouwing.
Schrijf op de knop wat er gebeurt als je erop klikt: “Verstuur je vraag”, “Bestel je taart”, “Schrijf je in”. Dat werkt beter dan een vaag “Verzenden” of “Submit”.
A6. Acties na verzenden: wat gebeurt er met de inzending?
Dit is het belangrijkste onderdeel van het formulier, en het onderdeel dat studenten het vaakst vergeten. Een formulier doet niets met wat een bezoeker invult, tenzij jij zegt wat ermee moet gebeuren. Dat doe je bij Actions After Submit.
- Klik op het kopje Actions After Submit.
- Bij Add Action (1) zie je de acties die nu aan staan. Op de demosite zijn dat Collect Submissions (de inzending bewaren in WordPress) en Email (een mail sturen).

- Klik in het vak (of op het +) om een actie toe te voegen. Je krijgt een lijst: Collect Submissions, Email, Email 2 (een tweede mail, bijvoorbeeld een ontvangstbevestiging naar de bezoeker), Redirect (doorverwijzen naar een andere pagina), en koppelingen met mailingprogramma’s zoals ActiveCampaign, ConvertKit, Mailchimp ….
- Een actie verwijderen doe je met het kruisje × vóór de naam.
- Voor elke actie die aan staat, verschijnt verderop in het paneel een eigen kopje met instellingen (Email, Collect Submissions, Redirect …).

Zet altijd minstens Email én Collect Submissions aan. Mails kunnen verloren gaan: in de spamfolder, door een typfout in het adres, of omdat de server even geen mail kon versturen. Met Collect Submissions staat elke inzending ook veilig in WordPress, zodat je nooit een bestelling of vraag kwijt bent.
A7. De e-mail instellen
Klik op het kopje Email. (Bovenaan staat misschien een reclameblokje voor “Email Deliverability”: dat mag je met het kruisje wegklikken.)
- To (1): naar wie de mail gaat. Dat is het adres van de eigenaar van de site, bv. de bakkerij. Meerdere adressen scheid je met een komma.
- Subject (2): het onderwerp van de mail. Maak het herkenbaar, bv. “Nieuw bericht via de website”, zodat de ontvanger meteen weet waar het over gaat.
- Message (3): de inhoud. Standaard staat er
[all-fields]: dat is een code die bij het versturen vervangen wordt door alle ingevulde velden. Meestal laat je dat gewoon staan.

Scrol verder naar beneden:
- From Email (4): het van-adres, het adres waarvan de mail lijkt te komen. Gebruik hier een adres op het domein van je eigen site (bv.
website@jouwdomein.be), nooit het adres van de bezoeker en ook geen Gmail-adres. Anders belandt de mail bijna zeker in de spam. - From Name (5): de naam die de ontvanger als afzender ziet, bv. “Bakkerij De Korenaar”.
- Reply-To (6): naar wie een antwoord gaat als je in je mailprogramma op “Beantwoorden” klikt. Kies hier het veld E-mail van je formulier. Dan antwoord je met één klik rechtstreeks aan de bezoeker.
- Daaronder vind je nog Cc en Bcc (een kopie naar een extra adres), Meta Data (extra info onderaan de mail, zoals datum en de pagina waarop het formulier stond) en Send As (HTML of platte tekst).

Waarom niet het adres van de bezoeker als van-adres? Stel dat Lotte met haar Gmail-adres het formulier invult. Als jouw website dan een mail verstuurt “van lotte@gmail.com”, ziet de ontvangende mailserver dat die mail helemaal niet van Gmail komt. Dat is precies wat oplichters doen, dus de mail wordt geweigerd of als spam gemarkeerd. Daarom: van = je eigen domein, antwoorden aan = de bezoeker.
A8. Inzendingen verzamelen
Klik op het kopje Collect Submissions. Hier is weinig in te stellen: de melding (1) zegt dat de inzendingen bewaard worden onder Elementor > Submissions. Bij Metadata kies je of ook het IP-adres en de browser (User Agent) van de bezoeker bewaard worden.

Bewaar niet meer dan nodig. Heb je het IP-adres van je bezoekers niet nodig, haal dan User IP weg bij Metadata (klik op het kruisje). Minder persoonsgegevens bewaren = minder risico, en zo hoort het ook volgens de GDPR.
A9. Doorverwijzen naar een bedankpagina
Standaard blijft de bezoeker na het verzenden op dezelfde pagina en verschijnt er een bedankbericht onder het formulier. Wil je de bezoeker liever naar een aparte bedankpagina sturen, voeg dan bij Actions After Submit de actie Redirect toe.
- Maak eerst een gewone pagina, bv. “Bedankt”, met een vriendelijke tekst en eventueel een knop terug naar de homepagina.
- Voeg in het formulier de actie Redirect toe (zie A6).
- Er verschijnt een nieuw kopje Redirect. Vul bij Redirect To (1) het adres van je bedankpagina in, bv.
https://s01.ucll.somesites.be/bedankt/.

Waarom een bedankpagina? Een aparte pagina geeft je meer ruimte: je kan uitleggen wat er nu gebeurt (“we bellen je binnen één werkdag”), een foto tonen of naar je Instagram verwijzen. En wie later met statistieken werkt (Google Analytics), kan het aantal bezoeken aan de bedankpagina tellen als “aantal ingevulde formulieren”. Voor een eenvoudig contactformulier volstaat het bedankbericht uit A10 ruim.
A10. Het bedankbericht (Aanvullende opties)
- Klik op het kopje Additional Options.
- Zet Custom Messages (1) op Ja. Pas dan verschijnen de velden voor je eigen meldingen.
- Bij Success Message (2) typ je het bericht dat de bezoeker ziet na een geslaagde verzending, bv. “Bedankt! We antwoorden binnen één werkdag.”
- Daaronder vertaal je ook de foutmeldingen (Form Error, Server Error, …). Die staan standaard in het Engels (“Your submission failed because of an error”). Typ er een Nederlandse zin in, bv. “Er liep iets mis. Probeer het opnieuw of bel ons op 016 12 34 56.”

Staat Custom Messages uit, dan negeert Elementor je eigen teksten en ziet de bezoeker de Engelse standaardmelding (“Your submission was successful.”). Een klassieke fout: tekst wel ingevuld, schakelaar vergeten. Controleer het altijd met een testinzending (A12).
Bij Form Validation kies je wie de foutmeldingen bij verplichte velden toont: de browser (Browser Default) of Elementor (Custom). Laat dat gerust op Browser Default.
A11. De stijl van het formulier
Klik bovenaan het paneel op het tabblad Stijl. Je ziet vier belangrijke kopjes:
- Form (1): de ruimte tussen de kolommen (Columns Gap) en tussen de rijen (Rows Gap), en de kleur en het lettertype van de labels.
- Field (2): de velden zelf (tekstkleur, achtergrond, rand, afgeronde hoeken).
- Buttons (3): de verzendknop.
- Messages (4): de kleur van het bedankbericht en de foutmeldingen.

Open Field: hier stel je Text Color, Typografie, Background Color, Border Color, Border Width en Border Radius (afgeronde hoeken) van alle velden tegelijk in.

Open Buttons: positie, uitlijning, typografie, en per toestand (Normal en Hover, als de muis erover gaat) de achtergrond- en tekstkleur, de rand en de binnenmarge (Text Padding).

Gebruik ook hier je globale kleuren en lettertypes (hoofdstuk over de huisstijl): klik op het bolletje naast een kleur en kies “Primair” of “Accent” in plaats van een losse kleurcode. Dan blijft je formulier mee veranderen als je huisstijl ooit wijzigt. Op de demosite komt de afgeronde rode knop gewoon uit de knopstijl van de Website instellingen.
Klaar met aanpassen? Klik rechtsboven op Publiceren. Zolang je dat niet doet, ziet een bezoeker de oude versie.
A12. Testen en de inzendingen terugvinden
Een formulier is pas klaar als je het zelf getest hebt. Doe dat in een privévenster (of uitgelogd), zodat je de site ziet zoals een bezoeker.
- Open de pagina met je formulier, vul alle velden in met testgegevens en vink het privacyvakje aan.
- Klik op de knop. Onder het formulier verschijnt een melding (1).
- Controleer of de mail toekomt op het adres dat je bij To invulde (kijk ook in de spamfolder), en of de inzending bewaard is (zie hieronder).

Van wie komt de mail? Op de cursussites vertrekt elke mail van de site vanaf het adres ucll@somesites.be, ook als je bij From Email iets anders invult. Zo komen de mails betrouwbaar aan en belanden ze niet in de spam. Het adres dat de bezoeker in het formulier typte, wordt automatisch het Reply-To-adres: klik je in je mailprogramma op Beantwoorden, dan gaat je antwoord rechtstreeks naar de bezoeker. Precies zoals in A7 uitgelegd: van = een vast, betrouwbaar adres, antwoorden aan = de bezoeker.
Komt de mail niet aan? Kijk eerst in je spamfolder en controleer het adres bij To. Vind je ze nog steeds niet, meld het dan aan je lesgever. Je inzending ben je intussen niet kwijt: ze staat bewaard (zie hieronder).
De bewaarde inzendingen vind je in het linkermenu onder Elementor → Submissions. Je ziet per inzending het e-mailadres, het formulier, de pagina en de datum. Een groen vinkje bij Actions Status betekent dat alle acties (zoals de mail) gelukt zijn, een rood driehoekje dat er iets misliep. Rechts staat een knop Export All to CSV om alles naar een rekenblad (Excel) te halen. Met de keuzelijsten bovenaan filter je op pagina, formulier of periode.

Klik op een inzending om ze te openen. Links zie je alle ingevulde velden, rechts bij Additional Info het formulier, de pagina en de datum. Onderaan staat het Actions Log: daar lees je per actie of ze gelukt is. Hier meldt de actie Email “Action completed successfully.”: de mail is vertrokken.

Telefoonnummer met spaties? Het veldtype Tel van Elementor aanvaardt cijfers en tekens zoals + ( ) – . maar geen spaties. Typt een bezoeker “0470 12 34 56”, dan krijgt hij een foutmelding. Zet daarom in de placeholder een voorbeeld zonder spaties, of gebruik het type Text als je dat te streng vindt.
Deel B – Gravity Forms
Gravity Forms is een aparte plugin die enkel formulieren maakt, en dat heel grondig. Je bouwt het formulier niet in Elementor, maar in een eigen scherm in het WordPress-dashboard (menu Forms). Daarna zet je het op een pagina. We maken samen het formulier “Taart op maat bestellen” voor de bakkerij, met de velden naam, e-mail, telefoon, afhaaldatum, aantal personen, smaak, opmerkingen en een toestemmingsvakje.
B1. De eerste keer: de welkomstwizard
De eerste keer dat je op Forms klikt, start Gravity Forms een korte wizard: Let’s get you set up! De licentiesleutel (stap 1) is al ingevuld, dat zie je aan het vinkje.
- Kies bij Select a Currency de munt Euro (standaard staat er U.S. Dollar). Dat is pas belangrijk als je later met betalingen werkt, maar zet het meteen goed.
- Klik telkens op Next tot de wizard klaar is. De vragen over jezelf en je gebruik mag je overslaan.

B2. Een nieuw formulier maken
- Ga naar Forms → Forms. Je ziet de lijst van je formulieren (2), met per formulier het aantal inzendingen (Entries), het aantal keer dat het bekeken werd (Views) en de Conversion (hoeveel procent van de kijkers het ook verstuurde).
- Klik op Add New (1).

- Je krijgt Explore Form Templates: kant-en-klare sjablonen (Simple Contact Form, Advanced Contact Form, Donation Form, …). Een sjabloon is handig om ideeën op te doen, maar om het te leren kies je Blank Form: een leeg formulier.
- Geef je formulier een duidelijke titel, bijvoorbeeld Taart op maat bestellen, en bevestig. Je komt in de formuliereditor.

B3. De formuliereditor en de velden
De editor bestaat uit twee delen: links het formulier zelf (1), rechts het paneel met velden (2). Bovenaan staan de knoppen Embed, Preview en Save Form (3).

- In het tabblad Add Fields staan de veldsoorten. Onder Standard Fields: Single Line Text (één regel tekst), Paragraph Text (groot tekstvak), Drop Down (keuzelijst), Number, Checkboxes, Radio Buttons, Hidden, HTML, Section (een tussentitel), Page (een nieuwe stap), Multiple Choice en Image Choice.
- Sleep een veld naar de plaats in het formulier waar je het wil, of klik erop om het onderaan toe te voegen.
- Scrol in het paneel naar Advanced Fields. Daar vind je slimmere velden: Name (voornaam + familienaam), Date, Time, Phone, Address, Website, Email, File Upload, CAPTCHA, List, Multi Select, Repeater en Consent (toestemming).

Voor ons taartformulier gebruiken we deze velden:
- Naam: Single Line Text (wil je voor- en familienaam apart, kies dan Name)
- E-mailadres: Email
- Telefoon: Phone
- Afhaaldatum: Date
- Aantal personen: Number
- Smaak: Drop Down
- Opmerkingen: Paragraph Text
- Toestemming: Consent
B4. Een veld instellen
Klik in het formulier op een veld. Rechts springt het paneel naar Field Settings, met bovenaan het soort veld en zijn ID. De instellingen zijn verdeeld in drie inklapbare blokken: General, Appearance en Advanced.
De keuzelijst “Smaak”. Klik op het veld Smaak (een Drop Down). Onder General vul je het Field Label (“Smaak”) en eventueel een Description (uitleg onder het veld) in. Bij Choices klik je op Edit Choices: er schuift een venster open waarin je de keuzes typt (Chocolade, Aardbei, Mokka, Citroen, Vers fruit). Met + en − voeg je een keuze toe of verwijder je er een, met de streepjes links versleep je ze. Onder Rules vink je Required aan om het veld verplicht te maken.

Het getal “Aantal personen”. Bij een Number-veld stel je het Number Format in (kies 9.999,99, de Belgische schrijfwijze met een komma) en een Range: een minimum (Min 4) en maximum (Max 60). Een bezoeker kan dan geen taart voor 2 of voor 500 personen bestellen.

De datum “Afhaaldatum”. Bij een Date-veld kies je bij Date Input Type voor Date Picker (de bezoeker klikt een datum aan in een kalendertje) en bij Date Format voor dd/mm/yyyy, zoals we in België schrijven. In de Description staat een nuttige tip voor de klant: “Bestel minstens twee dagen op voorhand.”

De toestemming. Onderaan staat het Consent-veld Toestemming: een vakje met een tekst ernaast (“Ik ga akkoord dat Bakkerij De Korenaar mijn gegevens gebruikt om deze bestelling te behandelen.”) en een kader met extra uitleg erboven (“Lees meer in onze privacyverklaring.”). Het is verplicht: zonder vinkje kan je niet bestellen. Daaronder zie je de knop Bestelling versturen. Klik op de knop om de tekst ervan te veranderen.

Breedte. In Gravity Forms kan je twee velden naast elkaar zetten door een veld naast een ander te slepen (zoals Aantal personen en Smaak). Zo blijven korte velden compact.
Vergeet niet op Save Form te klikken. Gravity Forms bewaart niet vanzelf. Verlaat je de editor zonder op te slaan, dan ben je je wijzigingen kwijt.
B5. Formulierinstellingen
Klik bovenaan op Settings. Links zie je vier onderdelen: Form Settings, Confirmations, Notifications en Personal Data. In Form Settings, blok Form Basics, staan de titel en de beschrijving van het formulier. In Form Layout kies je onder meer waar de labels staan (Label Placement: boven de velden, of links ervan).

Iets lager staat Required Field Indicator (1): hoe verplichte velden aangeduid worden. Standaard is dat de Engelse tekst “(Required)”. Op de demosite kozen we Asterisk: *, een sterretje. Gravity Forms waarschuwt in het gele kader dat een sterretje niet voor iedereen duidelijk is; kies je toch het sterretje, dan zet Gravity Forms bovenaan het formulier een zin die uitlegt wat het sterretje betekent. Met Custom kan je ook een eigen tekst typen, bv. “(verplicht)”.

Nog lager vind je Restrictions: met Limit number of entries sluit het formulier na een aantal inzendingen (handig voor een workshop met twaalf plaatsen), met Schedule Form is het formulier enkel open tussen twee data, en met Require user to be logged in kunnen enkel ingelogde gebruikers het invullen.

Het blok Spam Detection bespreken we in deel D. Klik onderaan op Save Settings.
B6. Meldingen (Notifications): wie krijgt een mail?
Een Notification is een e-mail die Gravity Forms verstuurt als iemand het formulier invult. Je kan er zoveel maken als je wil. Klik links op Notifications. Ons formulier heeft er twee: een Melding aan de bakkerij en een Bevestiging aan de klant. Met Add New maak je een nieuwe, met een klik op de naam bewerk je er een.

Open Melding aan de bakkerij:
- Name: een naam voor jezelf, de klant ziet die niet.
- Event: wanneer de mail vertrekt. Form is submitted = bij het verzenden.
- Send To: naar wie. Met Enter Email typ je zelf een adres. Hier staat
{admin_email}: een samenvoegcode (merge tag) die vervangen wordt door het beheerdersadres van de site (Instellingen → Algemeen). Je mag er ook gewoon een adres typen. - From Name en From Email: de afzender. Ook hier: een adres op het domein van je eigen site, niet dat van de bezoeker.
- Reply To:
{E-mailadres:2}= het e-mailadres dat de klant invulde (veld 2). Zo antwoord je met één klik aan de klant. - Verder naar onder staan het Subject (hier “Nieuwe taartbestelling van {Naam:1}”) en de Message met
{all_fields}, de code die alle ingevulde velden in de mail zet.

Je hoeft samenvoegcodes niet uit het hoofd te kennen. Klik op het icoontje {..} rechts boven een veld: je krijgt een lijst met alle velden van je formulier en andere codes om in te voegen.
Open nu Bevestiging aan de klant. Het verschil zit bij Send To: hier staat Select a Field aan, met bij Send To Field het veld E-mailadres. De mail gaat dus naar het adres dat de klant zelf invulde. In het bericht staat “Dag {Naam:1}, bedankt voor je bestelling! …”, gevolgd door een overzicht van wat de klant doorgaf.

Waarom een bevestiging aan de klant? Wie iets bestelt, wil zeker weten dat zijn bestelling goed aangekomen is. Een korte bevestigingsmail met een overzicht voorkomt dat de klant nog eens belt of het formulier een tweede keer invult. Met Configure Routing kan je zelfs regels maken, bv. “gaat het over een bruidstaart, stuur dan naar de patissier”.
B7. Bevestiging (Confirmation): wat ziet de bezoeker?
De Confirmation is wat de bezoeker op het scherm ziet na het verzenden. Klik links op Confirmations en open Standaardbevestiging.

- Bij Confirmation Type kies je: Text (een bericht op dezelfde plaats als het formulier), Page (doorsturen naar een pagina van je site, bv. een bedankpagina) of Redirect (doorsturen naar een ander webadres).
- Bij Message typ je het bericht. Ook hier werken samenvoegcodes: “Bedankt, {Naam:1}!” wordt “Bedankt, Lotte Peeters!”.
- Klik op Save Confirmation.

B8. Het formulier op een pagina zetten
Een Gravity Forms-formulier staat nog nergens op je site. Je moet het op een pagina zetten. Ga terug naar de editor van het formulier en klik bovenaan op Embed. Je ziet drie mogelijkheden: het toevoegen aan een bestaande pagina (Add to Existing Content), een nieuwe pagina maken (Create New), of, voor wie niet met de blokeditor werkt, Copy Shortcode. Wij bouwen pagina’s met Elementor, dus we gebruiken die laatste.

Wat is een shortcode? Een shortcode is een kort codewoord tussen vierkante haakjes, zoals [gravityform id="1"]. WordPress vervangt het op de voorkant door iets groters, hier het volledige formulier nummer 1. Het getal is het ID van je formulier (je ziet het in de lijst met formulieren en bovenaan het Embed-venster).
- Klik op Copy Shortcode.
- Maak een nieuwe pagina (Pagina’s → Pagina toevoegen), noem ze “Taart op maat” en klik op Bewerk met Elementor.
- Zet er een titel en een korte inleiding op (widgets Kop en Teksteditor).
- Open het widgetpaneel en typ in het zoekveld (1) shortcode. Sleep de widget Shortcode (2) onder je inleiding.

- Plak de shortcode in het vak Voer je shortcode in (1) en klik op Toepassen. Het formulier verschijnt in het canvas.
- Klik op het pijltje naast Publiceren om de pagina als concept te bewaren, of publiceer ze als ze klaar is.

In de editor toont Elementor het formulier zonder de opmaak van Gravity Forms. Kijk dus altijd op de voorkant (via het oog-icoon Voorbeeld wijzigingen of na het publiceren) hoe het er echt uitziet.
De shortcode verfijnen. Met extra stukjes in de shortcode bepaal je wat er getoond wordt. title="false" verbergt de titel van het formulier (handig als je pagina al een titel heeft), description="true" toont de beschrijving. Met theme="orbital" en styles='…' kan je zelfs de kleuren aanpassen aan je huisstijl. Op de demosite staat:
[gravityform id="1" title="false" description="true" theme="orbital" styles='{"buttonPrimaryBackgroundColor":"#B5452B","buttonPrimaryColor":"#FFFFFF","inputPrimaryColor":"#7A4A26","inputBorderRadius":"6"}']
Zo krijgt de knop de rode accentkleur van de bakkerij in plaats van het standaardblauw van Gravity Forms. Let op de enkele aanhalingstekens rond het stuk na styles=. Vervang de kleurcodes door die van je eigen huisstijl.
B9. Testen op de voorkant
Zo ziet het formulier eruit op de voorkant: de beschrijving, een zin die uitlegt wat het sterretje betekent, de velden met hun uitleg en een rode knop in de huisstijl van de bakkerij.

Vul het in en verstuur het. In de plaats van het formulier verschijnt de bevestiging uit B7, met de naam die je invulde.

Een pagina die nog als concept bewaard is, kan enkel jij zien (ingelogd, via “Voorbeeld”). Een bezoeker krijgt een foutpagina. Wil je dat iedereen het formulier kan invullen, dan moet je de pagina publiceren en ze in je menu zetten.
B10. Inzendingen bekijken (Entries)
Ga naar Forms → Entries (of klik in de editor bovenaan op Entries). Je ziet een tabel met de inzendingen van het formulier, met bovenaan filters: All, Unread (nog niet gelezen), Starred (met een ster gemarkeerd), Spam en Trash. Met het zoekvak zoek je in de velden. Met het tandwieltje rechts kies je welke kolommen je ziet.

Klik op een naam om de inzending te openen. Je ziet alle antwoorden onder elkaar. Rechts staat het blok Entry (wanneer en vanaf welke pagina het formulier verstuurd werd), met de links Move to Trash, Mark as Spam en de knop Edit. In het blok Notifications kan je een melding opnieuw versturen (Resend), handig als een klant zegt dat hij zijn bevestiging niet kreeg. Met Print entry druk je de bestelling af, bv. voor in het bakatelier.

Scrol je in een inzending naar beneden, dan vind je het blok Notes. Gravity Forms noteert daar per melding of ze verstuurd is: “WordPress successfully passed the notification email to the sending server” (1) betekent dat de mail vertrokken is, hier zowel de melding aan de bakkerij als de bevestiging aan de klant. Lukt het versturen niet, dan staat hier een rode foutmelding. Je kan in dit blok ook zelf een notitie toevoegen (Add Note), bv. “klant gebeld, taart bevestigd”.

B11. Inzendingen exporteren
- Ga naar Forms → Import/Export. Je komt op Export Entries.
- Kies bij Select a Form je formulier.
- Vink bij Select Fields de velden aan die je wil (Select All voor alles). Je kan ook extra gegevens meenemen, zoals Entry Date (de datum van de inzending).
- Kies eventueel een periode en klik onderaan op de downloadknop. Je krijgt een CSV-bestand dat je in Excel, Numbers of Google Sheets opent.

Links zie je ook Export Forms en Import Forms. Daarmee exporteer je het formulier zelf (de velden en instellingen, niet de inzendingen) en importeer je het op een andere site. Zo hoef je een goed formulier nooit twee keer te bouwen.
Een export bevat persoonsgegevens. Bewaar zo’n bestand niet zomaar op een gedeelde schijf of in je downloads, en verwijder het als je het niet meer nodig hebt.
Deel C – Elementor-formulier of Gravity Forms: wanneer kies je wat?
Beide doen hun werk goed. De vuistregel: eenvoudig en in de stijl van je pagina → Elementor. Uitgebreid, slim of veel inzendingen → Gravity Forms.
Kies het Elementor-formulier als …
- je een eenvoudig contact- of inschrijfformulier wil (naam, e-mail, bericht);
- je het formulier visueel wil ontwerpen, rechtstreeks op je pagina, met je globale kleuren en lettertypes;
- het formulier in een popup moet (bv. “Schrijf je in voor de nieuwsbrief”);
- één mail naar de eigenaar en eventueel één bevestiging (Email 2) volstaan.
Kies Gravity Forms als …
- je formulier lang of ingewikkeld is: bestellingen, inschrijvingen met veel keuzes, een formulier in meerdere stappen;
- je slimme velden nodig hebt: een datum met kalendertje, een getal met een minimum en maximum, een adres, een lijst die de bezoeker zelf aanvult;
- je voorwaardelijke logica wil: een veld of melding dat enkel verschijnt bij een bepaald antwoord;
- je meerdere meldingen wil, met routing naar verschillende mensen;
- je inzendingen grondig wil beheren: zoeken, markeren, afdrukken, meldingen opnieuw versturen, exporteren;
- je een maximum aantal inschrijvingen of een openingsperiode nodig hebt;
- je hetzelfde formulier op meerdere pagina’s of sites wil gebruiken (één formulier, overal dezelfde inzendingen; export/import naar een andere site).
Voor de bakkerij: het contactformulier (“stel je vraag”) staat in Elementor, want het is kort en hoort bij de pagina. De taartbestelling staat in Gravity Forms, want daar zijn een datum, een aantal met grenzen, een keuzelijst, twee verschillende mails en een overzichtelijke lijst met bestellingen nodig. Gebruik op één site gerust beide, maar kies per formulier bewust.
Deel D – Spam en privacy
Zodra je formulier online staat, komen er robots langs die het automatisch invullen met reclame of erger. Zonder bescherming krijg je al snel tientallen spamberichten per dag. Er zijn twee soorten bescherming:
- Een honeypot (“honingpot”): een onzichtbaar veld dat een mens niet ziet en dus leeg laat, maar dat een robot wel invult. Is het ingevuld, dan is het spam. Werkt volledig onzichtbaar, zonder hinder voor de bezoeker en zonder cookies. Zet dit altijd aan.
- reCAPTCHA van Google: een controle “Ik ben geen robot”. Versie 2 toont een vinkje (soms met een puzzel met foto’s), versie 3 werkt onzichtbaar en geeft elke bezoeker een score. Sterker dan een honeypot, maar je hebt sleutels van Google nodig (aan te vragen op google.com/recaptcha), en Google plaatst cookies: dat moet in je cookiebanner vermeld worden.
D1. Spam weren in het Elementor-formulier
Voeg in je Elementor-formulier een veld toe (+ Item toevoegen) en kies als Type (1) Honeypot. Meer hoef je niet in te stellen: op de voorkant is het veld onzichtbaar. Het contactformulier van de demosite heeft zo’n veld.

Wil je reCAPTCHA gebruiken, vul dan eerst je sleutels van Google in onder Elementor → Instellingen, tabblad Integraties, bij reCAPTCHA of reCAPTCHA V3 (Site Key en Secret Key). Daarna voeg je in het formulier een veld van het type reCAPTCHA of reCAPTCHA V3 toe.

D2. Spam weren in Gravity Forms
Ga naar Settings → Form Settings van je formulier, blok Spam Detection:
- Zet Detect spam using the Advanced Honeypot (1) aan. Daaronder kies je wat er gebeurt met een verdachte inzending; laat Create an entry and mark it as spam staan, dan kan je ze nog nakijken in de map Spam.
- Met Submission Speed Check (2) wordt een formulier dat sneller verstuurd wordt dan een mens kan typen, als spam gemarkeerd. Een extra laag, die je kan aanzetten als er toch spam doorkomt.
- Klik op Save Settings.

Voor reCAPTCHA in Gravity Forms ga je naar Forms → Settings → reCAPTCHA. Gravity Forms meldt daar dat de ingebouwde reCAPTCHA verdwijnt en dat je de aparte reCAPTCHA Add-On moet installeren (knop Install and activate the Gravity Forms reCAPTCHA Add-On). Daarna voeg je in je formulier het veld CAPTCHA toe (Advanced Fields). Voor de meeste kleine sites volstaat de honeypot.

D3. Privacy: de toestemmingscheckbox
Een formulier verzamelt persoonsgegevens. Volgens de privacywet (GDPR of AVG) moet de bezoeker weten wat je met zijn gegevens doet. Daarom:
- Zet onder elk formulier een toestemmingsvakje: in Elementor het type Acceptance, in Gravity Forms het veld Consent. Maak het verplicht en laat het niet vooraf aangevinkt.
- Zeg in de tekst waarvoor je de gegevens gebruikt (“om je vraag te beantwoorden”, “om je bestelling te behandelen”) en link naar je privacyverklaring.
- De privacyverklaring zelf (en de cookieverklaring) maak je met Complianz, zie het hoofdstuk over Complianz. Gebruik je reCAPTCHA, dan hoort Google daar ook in vermeld te staan.
- Vraag niet meer dan nodig, en bewaar niet langer dan nodig. In Gravity Forms vind je onder Settings → Personal Data van je formulier instellingen om bv. geen IP-adressen op te slaan en oude inzendingen automatisch te laten verwijderen.
Een toestemmingsvakje bij een contact- of bestelformulier gaat over het behandelen van die vraag. Wil je de bezoeker ook je nieuwsbrief sturen, dan heb je daarvoor een apart, niet-verplicht vakje nodig (“Ja, stuur me ook de nieuwsbrief”). Iemand op je mailinglijst zetten omdat hij een vraag stelde, mag niet.
Veelgestelde vragen
Ik krijg geen mail als iemand mijn formulier invult. Wat nu?
Kijk eerst of de inzending bewaard is (Elementor → Submissions, of Forms → Entries). Is ze er, dan werkt het formulier en ligt het aan de mail. Controleer het adres bij To / Send To op typfouten en kijk in je spamfolder. Bij Elementor zie je in het Actions Log van de inzending of de mail verstuurd werd, bij Gravity Forms in het blok Notes onderaan de inzending. Lukt het nog niet, meld het dan aan je lesgever.
Mijn bedankbericht staat in het Engels, hoewel ik een Nederlandse tekst typte.
In Elementor moet Custom Messages (Additional Options) aan staan, anders worden je eigen teksten genegeerd (A10).
Ik zie mijn Gravity Forms-formulier niet op de site.
Een Gravity Forms-formulier staat pas op je site als je het met de shortcode op een pagina zet (B8), en die pagina gepubliceerd is. Controleer ook het ID in de shortcode: is het het juiste formulier?
Er staan nog Engelse woorden in mijn Gravity Forms-formulier (“indicates required fields”, “Please enter a number from …”).
Gravity Forms is op de cursussites niet volledig vertaald. Zinnen die je zelf typt (labels, beschrijvingen, knoppen, bevestigingen) kan je altijd in het Nederlands zetten. Voor het sterretje kan je bij Required Field Indicator ook Custom kiezen met een eigen tekst, zoals “(verplicht)”.
Opdracht 1: een contactformulier met Elementor
- Zet op de contactpagina van je eigen site een Formulier-widget met minstens: naam, e-mail (type Email), bericht (Textarea) en een privacyvinkje (Acceptance, verplicht, met een link naar je privacyverklaring). Voeg een veld van het type Honeypot toe.
- Zet Naam en E-mail naast elkaar (Column Width 50%) en geef de knop een duidelijke tekst.
- Stel de acties in: Collect Submissions en Email (naar je eigen adres, een duidelijk onderwerp, Reply-To = het e-mailveld).
- Zet Custom Messages aan en schrijf een Nederlands bedankbericht en foutmelding.
- Stijl het formulier met je globale kleuren en lettertypes. Publiceer, en doe één testinzending in een privévenster. Controleer de inzending onder Elementor → Submissions.
Opdracht 2: een uitgebreid formulier met Gravity Forms
- Bedenk voor je eigen site een formulier dat meer vraagt dan een contactformulier: een inschrijving voor een activiteit, een offerteaanvraag, een reservatie ….
- Maak het in Gravity Forms met minstens zes velden, waarvan een datum, een getal met minimum en maximum, een keuzelijst en een Consent-veld.
- Stel twee meldingen in: één naar jezelf (met Reply To naar de bezoeker) en één bevestiging naar de bezoeker. Schrijf een persoonlijke bevestiging met de naam van de bezoeker.
- Zet de Advanced Honeypot aan en kies Euro als munt.
- Zet het formulier met de Shortcode-widget op een nieuwe pagina, publiceer die en doe één testinzending. Bekijk ze onder Forms → Entries en exporteer ze naar CSV.
- Schrijf in twee zinnen waarom je voor dit formulier Gravity Forms koos en niet Elementor.
Samengevat
- Kies voor elk veld het juiste type, maak enkel noodzakelijke velden verplicht en houd je formulier kort.
- Een formulier doet niets zonder acties (Elementor) of meldingen (Gravity Forms). Zet altijd een mail én het bewaren van inzendingen aan.
- Van-adres = je eigen domein, antwoorden-aan = het e-mailadres van de bezoeker.
- Zorg voor een duidelijk Nederlands bedankbericht (Elementor: Custom Messages aan; Gravity Forms: Confirmation).
- Een Gravity Forms-formulier zet je met de widget Shortcode op een Elementor-pagina.
- Eenvoudig en visueel: Elementor. Uitgebreid, slim, veel inzendingen: Gravity Forms.
- Altijd een honeypot tegen spam, altijd een verplicht (niet vooraf aangevinkt) toestemmingsvakje met een link naar je privacyverklaring.
- Test elk formulier zelf, als bezoeker, voor je het de wereld in stuurt.