Spring til indhold

GuideAdresser

Adresseforslag i Elementor-formularer

Elementor Pro’s Form-widget har ingen adressetype, men hvert felt kan få sit eget ID. Det er alt, adressefeltet skal bruge for at finde adressen og udfylde postnummer og by — også i en formular i en popup.

Kaldet i guiden

4 min læsning6 trinOpdateret
På denne side6 trin

Opret en offentlig nøgle

Feltet kalder Grundfast direkte fra kundens browser, så det bruger en offentlig nøgle (gf_pub_live_). Den må gerne stå i sidens kildekode, fordi den kun virker fra de domæner, du skriver på den, og kun til adresseopslag. Opret den under Nøgler i dashboardet: vælg Offentlig og skriv dine domæner, fx firma.dk og www.firma.dk.

Byg og test med en offentlig testnøgle (gf_pub_test_), som aldrig faktureres, og skift til live-nøglen, når feltet virker. Reglerne for domæner — www, underdomæner med *. og porte — står i dokumentationen for adressefeltet.

Giv felterne et ID

  1. Opret tre tekstfelter

    I Form-widgeten tilføjer du felterne Adresse, Postnummer og By, alle af typen Text.

  2. Sæt et ID på hvert

    Åbn feltet og fanen Advanced, og skriv et ID: adresse, postnr og by. Brug kun små bogstaver, tal og bindestreg — ID’et indgår også i e-mailens felt-shortcodes.

  3. Tjek id’et på siden

    Elementor sætter form-field- foran ID’et i HTML, så feltet hedder #form-field-adresse. Højreklik på feltet på den publicerede side og vælg Undersøg for at se, at det passer.

Vil du have BFE-nummeret med i indsendelsen, så tilføj et felt af typen Hidden med ID’et bfe. Det dukker op i e-mailen og i indsendelserne som de andre felter.

Læg scriptet i Custom Code

  1. Ny kodestump

    Gå til Elementor → Custom Code i WordPress og tilføj en ny. Giv den et navn, fx “Grundfast adressefelt”.

  2. Placering

    Vælg Location </body> - End og indsæt tagget:

    html
    <script
      src="https://grundfast.dk/widget/v1/grundfast-adresse.js"
      defer
      data-key="gf_pub_live_..."
      data-felt="#form-field-adresse"
      data-postnr="#form-field-postnr"
      data-by="#form-field-by"
      data-bfe="#form-field-bfe"
    ></script>
  3. Publicér med betingelser

    Klik Publish og vælg, hvor koden skal køre: hele sitet, eller kun de sider, hvor formularen står. Scriptet gør ingenting på sider uden feltet, så hele sitet er også i orden.

Står formularen i en popup, findes felterne først, når popuppen åbnes. Feltet holder øje med siden og hægter sig på, så snart adressefeltet dukker op — du skal ikke gøre noget ekstra.

Uden Elementor Pro

Custom Code og Form-widgeten hører til Elementor Pro. Bruger du gratisudgaven med et andet formular-plugin, så se guiderne til Contact Form 7 og Gravity Forms — scriptet er det samme, kun selektorerne skifter.

Flere formularer med adresse

Et id må kun findes én gang på en side. Har du to formularer med adresse på samme side, så giv felterne forskellige ID’er (fx adresse-2) og skriv begge i data-felt, adskilt med komma. Postnummer og by slås op i den formular, brugeren skriver i, så hver formular udfylder sine egne felter, når selektorerne i data-postnr og data-by også nævner begge.

Tjek nøglen fra en terminal

Før du leder i platformens indstillinger, kan du se, om nøglen og domænet passer sammen. Kaldet nedenfor er det samme, feltet laver. Origin er dit domæne, præcis som browseren skriver det:

bash
curl -G "https://api.grundfast.dk/v1/adresse/search" \
  --data-urlencode "q=Vestergade 10" \
  --data-urlencode "token=$GRUNDFAST_PUBLIC_KEY" \
  -H "Origin: https://www.firma.dk"

Svarer det med adresser, er nøglen i orden. Et 403 med origin … is not allowed betyder, at domænet ikke står på nøglen — ret listen i dashboardet; det slår igennem inden for et halvt minut.

Hvis der ikke kommer forslag

  • Åbn browserens konsol (F12, fanen Console). Feltet skriver én linje, der begynder med [grundfast-adresse], med årsagen fra API’et.
  • no public key — scriptet blev indlæst uden data-key.
  • Ingen linje og ingen liste — feltet blev ikke fundet. Tjek at selektoren i data-felt rammer feltet: skriv document.querySelectorAll('…') med den samme selektor i konsollen.
  • Listen vises, men felterne udfyldes ikke — selektorerne i data-postnr og data-by rammer ikke noget. De slås op i samme formular som adressefeltet først, derefter på hele siden.

Feltet stopper aldrig formularen: fejler et kald, lukker listen, og kunden kan skrive adressen i hånden som før.

Var denne side nyttig?

Ofte stillede spørgsmål

Ja, en HTML-widget på samme side som formularen kan indeholde script-tagget. Custom Code er bare nemmere at holde styr på, fordi koden ligger ét sted for hele sitet.

Custom Code kører på den publicerede side, ikke i editoren. Test på siden selv, eller i forhåndsvisningen.

Ja. Feltet holder øje med siden og hægter sig på adressefeltet, når popuppen åbnes og formularen tegnes.

Ja. Forslagene er en hjælp, og formularen sendes som normalt. Vælges der ikke et forslag, udfyldes postnummer, by og BFE-nummer ikke af sig selv.

Prøv det på rigtige data

En gratis nøgle giver adgang til alle registre med samme svarform. Testnøgler faktureres aldrig, så du kan bygge færdigt, før du skifter til produktion.

Gratis op til 5.000 kald/md · intet kreditkort · data fra Klimadatastyrelsen/Datafordeler, CC BY 4.0

Relateret