This repository has been archived on 2024-11-13. You can view files and clone it, but cannot push or open issues or pull requests.
fediversity_website/themes/nluug/layouts/partials/schemas/schema_Person.html

88 lines
2.8 KiB
HTML

{{ $author := index .Site.Data.personen (substr $.File.LogicalName 0 -3) }}
{{ $location := index .Site.Data.location .Site.Params.primarylocation }}
{{ $sameas := slice }}
{{ if $author.sameas }}{{ $sameas = $sameas | append ($author.sameas) }}{{ end }}
{{ if $author.websites }}
{{ range index ($author.websites) }}
{{ if eq .sameas true }}
{{ $sameas = $sameas | append (.url) }}
{{ end }}
{{ end }}
{{ end }}
{{ if $author.social }}
{{ if $author.social.github }}
{{ $sameas = $sameas | append (printf "https://github.com/%s" $author.social.github) }}
{{ end }}
{{ if $author.social.linkedin }}
{{ $sameas = $sameas | append ($author.social.linkedin) }}
{{ end }}
{{ if $author.social.mastodon }}
{{ $sameas = $sameas | append ($author.social.mastodon_url) }}
{{ end }}
{{ if $author.social.twitter }}
{{ $sameas = $sameas | append (printf "https://twitter.com/%s" $author.social.twitter) }}
{{ end }}
{{ end }}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Person",
"@id": "{{ .Permalink }}#person",
"url": "{{ .Permalink }}",
"name": "{{ $author.name | default .Site.Params.textEmptyValue }}",
{{ if $author.nationality }}"nationality": "{{ $author.nationality }}",{{ end }}
"affiliation": [
{
"@type": "Organization",
"id": "{{ .Site.BaseURL }}#organization",
"url": "{{ .Site.BaseURL }}",
"name": "{{ .Site.Title }}",
"sameAs": {{ .Site.Params.organization_sameas }}
}
],
{{ if $author.gender }}"gender": "{{ $author.gender }}",{{ end }}
{{ if $author.jobfunction }}"Description": "{{ $author.jobfunction }}",{{ end }}
{{ if $author.description }}"disambiguatingDescription": "{{ $author.description }}",{{ end }}
{{ if $author.jobtitle }}"jobTitle": "{{ $author.jobtitle }}",{{ end }}
{{ if $author.worksfor }}
"worksFor": [
{
"@type": "Organization",
"name": "{{ .Site.Params.name | default .Site.Params.textEmptyValue }}"
}
],
{{ end }}
{{ if $sameas }}
"sameAs": [{{ range $i, $e := $sameas }}{{ if $i }}, {{ end }}"{{ $e }}"{{ end }}],
{{ end }}
{{ if $author.address }}
"address": {
"@type": "PostalAddress",
"addressLocality": "{{ $author.address.city }}",
"addressRegion": "{{ $author.address.region }}",
"addressCountry": "{{ $author.address.country }}"
},{{ end }}
"image": "{{ $author.thumbnail | absURL }}",
"mainEntityOfPage": {
"@type": "ProfilePage",
"@id": "{{ .Permalink }}#profilepage",
"url": "{{ .Permalink }}",
"name": "{{ .Title }}",
"mainContentOfPage": {
"@type": "WebPageElement",
"cssSelector": ".content"
},
"speakable": {
"@type": "SpeakableSpecification",
"cssSelector": ".speakable"
},
"isPartOf": {
"@type": "WebSite",
"@id": "{{ .Site.BaseURL }}#website",
"url": "{{ .Site.BaseURL }}",
"name": "{{ .Site.Title | default .Site.Params.textNoTitle }}"
}
}
}
</script>