{{- /* schema-jsonld.html — emits JSON-LD based on the page's front-matter schemaType. BreadcrumbList is emitted separately by breadcrumbs.html. Uses dict + jsonify so all values are safely escaped. */ -}} {{- $brand := .Site.Data.brand -}} {{- $type := .Params.schemaType | default "none" -}} {{- if eq $type "Organization" -}} {{- $sameAs := slice -}} {{- range $brand.socialLinks -}} {{- $sameAs = $sameAs | append .url -}} {{- end -}} {{- $data := dict "@context" "https://schema.org" "@type" "Organization" "name" $brand.name "url" .Site.BaseURL "logo" ($brand.logoPath | absURL) "description" $brand.tagline "email" $brand.contactEmail "foundingDate" (printf "%d" (int $brand.foundedYear)) "sameAs" $sameAs -}} {{- else if eq $type "FAQPage" -}} {{- $items := slice -}} {{- range .Site.Data.faq -}} {{- $items = $items | append (dict "@type" "Question" "name" .question "acceptedAnswer" (dict "@type" "Answer" "text" .answer) ) -}} {{- end -}} {{- $data := dict "@context" "https://schema.org" "@type" "FAQPage" "mainEntity" $items -}} {{- else if eq $type "Article" -}} {{- /* The About page is an editorial review, so we emit a Review with the promoted operator as the reviewed item. */ -}} {{- $data := dict "@context" "https://schema.org" "@type" "Review" "headline" (.Params.h1 | default .Title) "url" .Permalink "datePublished" (.Date.Format "2006-01-02") "dateModified" (.Lastmod.Format "2006-01-02") "author" (dict "@type" "Organization" "name" $brand.name) "publisher" (dict "@type" "Organization" "name" $brand.name "logo" (dict "@type" "ImageObject" "url" ($brand.logoPath | absURL))) "itemReviewed" (dict "@type" "Organization" "name" $brand.legalOperatorName) "reviewRating" (dict "@type" "Rating" "ratingValue" $brand.ratingValue "bestRating" 5 "worstRating" 1) -}} {{- end -}}