{{- /*  <!-- Breadcrumbs -->  */}}
{{- $visiblePage := .}}
{{- $breadcrumbs := slice }}
{{- $path := "" }}
{{- if or (eq .Kind "taxonomy") (or (eq .Kind "term") (or (eq .Kind "404") (.File))) }}
{{- $path = .RelPermalink }}
{{- else if .IsHome }}
{{- $path = "" }}
{{- else }}
{{- errorf "Could not find page at url: \"%s\"!" .RelPermalink }}
{{- end }}
{{- $path = trim $path "/" }}
{{- $currentPath := "" }}
{{- $breadcrumbs = $breadcrumbs | append (dict "name" "Home" "url" $.Site.BaseURL) }}
{{- range split $path "/" }}
{{- $currentPath = printf "%s/%s" $currentPath . }}
{{- $page := $.GetPage $currentPath }}
{{- if not $.IsHome }}
{{- if ne . "_index.md" }}
{{- if eq $.Kind "404" }}
{{- $breadcrumbs = $breadcrumbs | append (dict "name" "Not Found" "url" (printf "%s%s" $.Site.BaseURL (strings.TrimLeft "/" $currentPath))) }}
{{- else }}
{{- $title := $page.Title }}
{{- with $page.Params.breadcrumb }}
{{- $title = . }}
{{- end }}
{{- if eq (trim $currentPath "/") $path }}
{{- $breadcrumbs = $breadcrumbs | append (dict "name" $visiblePage.Title "url" $visiblePage.Permalink) }}
{{- else }}
{{- $breadcrumbs = $breadcrumbs | append (dict "name" $title "url" $page.Permalink) }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

<script type="application/ld+json">
{
    "@context": "https://schema.org",
    "@graph": [
        {
            "@type": "Person",
            "@id": "{{ $.Site.BaseURL }}#website_founder",
            "name": {{ $.Site.Params.author.name | safeHTML }},
            {{- with $.Site.Params.author.email }}
            "email": {{ . | safeHTML }},
            {{- end }}
            {{- with $.Site.Params.author.image }}
            {{- $img := resources.Get . }}
            {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
            "image": {
                "@type": "ImageObject",
                "url": "{{ $img.Permalink }}",
                "width": {{ $img.Width }},
                "height": {{ $img.Height }}
            },
            {{- end }}
            "url": "{{ $.Site.BaseURL }}"
        },
        {
            "@type": "Organization",
            "name": {{ $.Site.Params.author.name | safeHTML }},
            "slogan": {{$.Site.Params.HomeSubtitle | safeHTML }},
            {{- with $socials := .Site.Params.social }}
            "sameAs": [
                {{- range $index, $social := $socials }}
                "{{ $social.url }}"{{ if ne $index (sub (len $socials) 1) }},{{ end }}
                {{- end }}
            ],
            {{- end }}
            {{- with $.Site.Params.author.email }}
            "email": {{ . | safeHTML }},
            {{- end }}
            {{- with $.Site.Params.author.image }}
            {{- $img := resources.Get . }}
            {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
            "logo": {
                "@type": "ImageObject",
                "url": "{{ $img.Permalink }}",
                "width": {{ $img.Width }},
                "height": {{ $img.Height }}
            },
            "image": {
                "@type": "ImageObject",
                "url": "{{ $img.Permalink }}",
                "width": {{ $img.Width }},
                "height": {{ $img.Height }}
            },
            {{- end }}
            "url": "{{ $.Site.BaseURL }}",
            "founder": { "@id": "{{ $.Site.BaseURL }}#website_founder" }
        },
        {
            "@type": "WebSite",
            "inLanguage": "{{ .Site.LanguageCode }}",
            {{- $img := resources.Get .Site.Params.portrait.path }}
            {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
            "thumbnailUrl": "{{ $img.Permalink }}",
            "image": [
                {
                    "@type": "ImageObject",
                    "url": "{{ $img.Permalink }}",
                    "width": {{ $img.Width }},
                    "height": {{ $img.Height }}
                }
            ],
            "genre": "{{ .Site.Params.genre }}",
            "keywords": "{{ .Site.Params.keywords }}{{ if .Params.tags }}{{ range .Params.tags }}, {{ . }}{{ end }}{{ end }}{{ with .Title }}, {{ delimit (split . " ") ", " }}{{ end }}{{ with .Params.Subtitle }}, {{ delimit (split . " ") ", " }}{{ end }}",
            "url": "{{ .Site.BaseURL }}",
            {{- with .Site.Copyright }}
            "license": {{ . | safeHTML }},
            {{- end }}
            {{- if .Site.Params.author.name }}
            {{- range slice "publisher" "author" }}
            {{ . }}: {
                "@type": "Person",
                "name": {{ $.Site.Params.author.name | safeHTML }},
                {{- with $.Site.Params.author.email }}
                "email": {{ . | safeHTML }},
                {{- end }}
                {{- with $.Site.Params.author.image }}
                {{- $img := resources.Get . }}
                {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
                "image": {
                    "@type": "ImageObject",
                    "url": "{{ $img.Permalink }}",
                    "width": {{ $img.Width }},
                    "height": {{ $img.Height }}
                },
                {{- end }}
                "url": "{{ $.Site.BaseURL }}"
            },
            {{- end }}
            {{- end }}
            "headline": {{ .Site.Title }},
            "alternativeHeadline": {{ .Site.Params.homeSubtitle }},
            "description": {{ .Site.Params.description }}
        },
        {
            "@type": "BreadcrumbList",
            "itemListElement": [
                {{- range $index, $breadcrumb := $breadcrumbs }}
                {
                    "@type": "ListItem",
                    "position": {{ add $index 1 }},
                    "item": {
                        "@id": "{{ $breadcrumb.url }}",
                        "url": "{{ $breadcrumb.url }}",
                        "name": "{{ $breadcrumb.name }}"
                    }
                }{{ if ne $index (sub (len $breadcrumbs) 1) }},{{ end }}
                {{- end }}
            ]
        }{{ if .IsPage }},
        {
            "@context": "http://schema.org",
            "@type": "BlogPosting",
            "articleSection": "{{ .Type }}",
            "headline": "{{ .Title | safeHTML }}",
            {{- with .Params.Subtitle }}
            "alternativeHeadline": "{{ . }}",
            {{- end }}
            "inLanguage": "{{ .Site.LanguageCode }}",
            "mainEntityOfPage": {
                "@type": "WebPage",
                "@id": "{{ .Permalink }}"
            },
            {{- with .Params.cover}}
            {{- $img := resources.Get (printf "%s" .) }}
            {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
            "thumbnailUrl": "{{ $img.Permalink }}",
            "image": [
                {
                    "@type": "ImageObject",
                    "url": "{{ $img.Permalink }}",
                    "width": {{ $img.Width }},
                    "height": {{ $img.Height }}
                }
            ],
            {{- end }}
            "genre": "{{ .Type }}",
            "keywords": "{{ .Site.Params.keywords }}{{ if .Params.tags }}{{ range .Params.tags }}, {{ . }}{{ end }}{{ end }}{{ with .Title }}, {{ delimit (split . " ") ", " }}{{ end }}{{ with .Params.Subtitle }}, {{ delimit (split . " ") ", " }}{{ end }}",
            "wordcount": {{ .WordCount }},
            "url": "{{ .Permalink }}",
            "datePublished": {{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }},
            {{- if .GitInfo }}
            "dateModified": {{ dateFormat "2006-01-02T15:04:05-07:00" .GitInfo.AuthorDate.Local | safeHTML }},
            {{- end }}
            {{- with .Site.Copyright }}
            "license": {{ . | safeHTML }},
            {{- end }}
            {{- if .Site.Params.author.name }}
            {{- range slice "publisher" "author" }}
            {{ . }}: {
                "@type": "Person",
                "name": {{ $.Site.Params.author.name | safeHTML }},
                {{- with $.Site.Params.author.email }}
                "email": {{ . | safeHTML }},
                {{- end }}
                {{- with $.Site.Params.author.image }}
                {{- $img := resources.Get . }}
                {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
                "image": {
                    "@type": "ImageObject",
                    "url": "{{ $img.Permalink }}",
                    "width": {{ $img.Width }},
                    "height": {{ $img.Height }}
                },
                {{- end }}
                "url": "{{ $.Site.BaseURL }}"
            },
            {{- end }}
            {{- end }}
            "description": {{ .Params.description | plainify }}
        }{{ end }}{{ if or .IsSection (or (eq .Kind "term") (eq .Kind "taxonomy")) }},
        {
            "@context": "http://schema.org",
            "@type": "ItemList",
            "itemListOrder": "https://schema.org/ItemListOrderDescending",
            "name": "{{ .Title }}",
            "numberOfItems": {{ .Paginator.TotalNumberOfElements }},
            "itemListElement": [
                {{- range $index, $page := .Paginator.Pages }}
                {
                    "@type": "ListItem",
                    "position": {{ add $index 1 }},
                    "item": {
                        "@type": "BlogPosting",
                        "articleSection": "{{ .Type }}",
                        "headline": "{{ .Title | safeHTML }}",
                        {{- with .Params.Subtitle }}
                        "alternativeHeadline": "{{ . }}",
                        {{- end }}
                        "inLanguage": "{{ .Site.LanguageCode }}",
                        "mainEntityOfPage": {
                            "@type": "WebPage",
                            "@id": "{{ .Permalink }}"
                        },
                        {{- with .Params.cover}}
                        {{- $img := resources.Get (printf "%s" .) }}
                        {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
                        "thumbnailUrl": "{{ $img.Permalink }}",
                        "image": [
                            {
                                "@type": "ImageObject",
                                "url": "{{ $img.Permalink }}",
                                "width": {{ $img.Width }},
                                "height": {{ $img.Height }}
                            }
                        ],
                        {{- end }}
                        "genre": "{{ .Type }}",
                        "keywords": "{{ .Site.Params.keywords }}{{ if .Params.tags }}{{ range .Params.tags }}, {{ . }}{{ end }}{{ end }}{{ with .Title }}, {{ delimit (split . " ") ", " }}{{ end }}{{ with .Params.Subtitle }}, {{ delimit (split . " ") ", " }}{{ end }}",
                        "wordcount": {{ .WordCount }},
                        "url": "{{ .Permalink }}",
                        "datePublished": {{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }},
                        {{- if .GitInfo }}
                        "dateModified": {{ dateFormat "2006-01-02T15:04:05-07:00" .GitInfo.AuthorDate.Local | safeHTML }},
                        {{- end }}
                        {{- with .Site.Copyright }}
                        "license": {{ . | safeHTML }},
                        {{- end }}
                        {{- if .Site.Params.author.name }}
                        {{- range slice "publisher" "author" }}
                        {{ . }}: {
                            "@type": "Person",
                            "name": {{ $.Site.Params.author.name | safeHTML }},
                            {{- with $.Site.Params.author.email }}
                            "email": {{ . | safeHTML }},
                            {{- end }}
                            {{- with $.Site.Params.author.image }}
                            {{- $img := resources.Get . }}
                            {{- $img = $img.Resize (printf "%dx%d png" $img.Width $img.Height) }}
                            "image": {
                                "@type": "ImageObject",
                                "url": "{{ $img.Permalink }}",
                                "width": {{ $img.Width }},
                                "height": {{ $img.Height }}
                            },
                            {{- end }}
                            "url": "{{ $.Site.BaseURL }}"
                        },
                        {{- end }}
                        {{- end }}
                        "description": {{ .Params.description | plainify }}
                    }
                }{{ if ne $index (sub $.Paginator.NumberOfElements 1) }},{{ end }}
                {{- end }}
            ]
        }{{ end }}
    ]
}
</script>