{strip}>
<{assign var="desc" value=$product->getDescription()|strip_tags:true|replace:"\'":"'"|replace:"\r\n":" "|replace:"\n":" "|replace:'"':"'"}>
<{assign var="og_desc" value=$meta_description|default:$desc|truncate:200:""}>
<{assign var="images" value=$product->getImages()}>
<{assign var="og_image" value=$product->getOpenGraphImage()}>
<{if $og_image || $images}>
<{* Delingsbilledet først: Facebook og LinkedIn bruger det første og:image som
standard. Det er altid ét af produktets egne billeder (admin viser en
radioknap pr. billede), så det springes over i loopet for at undgå en dublet.
$og_image kan ikke genbruges fra meta.html — assign er template-lokal. *}>
<{if $og_image}>
<{/if}>
<{section name="j" loop=$images}>
<{if !$og_image || $images[j]->getImageId() != $og_image->getImageId()}>
<{/if}>
<{/section}>
<{/if}>
<{if $product->getSalePrice()}>
<{/if}>
getRealPrice() y=$product->getRealVat()}>" />
<{if $product->getSalePrice()}>
<{/if}>
<{assign var="supplier" value=$product->getSupplier()}>
<{assign var="brand" value=$product->getBrand()}>
<{assign var="reviews" value=$product->getProductReviews()}>
<{assign var="antalreviews" value=0}>
<{assign var="totalscore" value=0}>
<{assign var="gennemsnit" value=0}>
<{if $reviews}>
<{section name="p" loop=$reviews}>
<{assign var="review_rating" value=$reviews[p]->getRating()|intval}>
<{math assign="totalscore" equation="x+y" x=$totalscore y=$review_rating}>
<{/section}>
<{assign var="antalreviews" value=$reviews|@count}>
<{math assign="gennemsnit" equation="x/y" x=$totalscore y=$antalreviews}>
<{/if}>
<{assign var="priceValidUntil" value="+1 month"|date_format:"%Y-%m-%d"}>
<{* availability skal følge Google Shopping-feedet præcist. Er de uenige, deaktiverer
Merchant Center varen med "Mismatched availability (page crawl)", og i søgeresultatet
er det siden der vises. getStructuredDataAvailability() genbruger feedets logik, så
varer med restordre ikke længere står som udsolgt. Se HeroDesk #5659 / issue #877. *}>
<{assign var="availability" value=$product->getStructuredDataAvailability()}>
<{assign var="availabilityStarts" value=$product->getStructuredDataAvailabilityStarts()}>
<{* Alle strengværdier skal igennem |@json_encode, som selv tilføjer anførselstegnene.
escape:javascript laver ' om til \', og det er IKKE en gyldig JSON-escape — Google
kasserer hele blokken. Se HeroDesk #5659 / issue #865. *}>
<{/strip}>