Hent indhold fra ekstern URL i temaer
Guide til at hente indhold fra eksterne URL'er i Shoporama-temaer med Smarty fetch-funktionen.
I Shoporama-temaer kan du hente indhold fra eksterne URL'er direkte ind i dine templates. Det er nyttigt, hvis du fx vil vise data fra en ekstern API, indlæse et JSON-feed eller inkludere indhold fra en anden server.
Bemærk
Funktionen fetch_file er tilgængelig i Smarty 2-temaer. I Smarty 4 bruger du i stedet Smartys indbyggede fetch-funktion.
Syntaks og parametre
Funktionen fetch_file tager tre parametre:
| Parameter | Påkrævet | Beskrivelse |
|---|---|---|
url | Ja | URL'en der skal hentes (kun http/https) |
format | Nej | Sæt til json for at parse som array. Udelad for ren tekst |
assign | Nej | Variabelnavn som indholdet tildeles til |
Eksempel: Hent JSON-data
Her henter vi en JSON-fil og bruger dataen i templaten:
<{fetch_file url="https://example.com/data.json" format="json" assign="data"}>
Hvis JSON-filen indeholder:
{
"name": "Billy Bob",
"email": "billy@example.com"
}
Kan du nu bruge dataen sådan:
Navn: <{$data.name}>
Email: <{$data.email}>
Eksempel: Hent som ren tekst
Udelader du format-parameteren, returneres indholdet som ren tekst:
<{fetch_file url="https://example.com/snippet.html" assign="snippet"}>
<{$snippet}>
Smarty 4: Brug fetch i stedet
I Smarty 4-temaer bruger du Smartys indbyggede fetch-funktion:
<{fetch file="https://example.com/data.txt" assign="content"}>
<{$content}>
Tip
Vær opmærksom på, at eksterne kald kan påvirke din sides loadtid. Overvej at cache resultatet eller bruge asynkrone kald via JavaScript, hvis dataen ikke er kritisk for den initielle sidevisning.
Har du brug for hjælp? Kontakt os på support@shoporama.dk.