feat: added schema.org structured data
1 files modified
1 files added
| | |
| | | |
| | | |
| | | {{- end }} |
| | | |
| | | |
| | | <!-- Schema.org--> |
| | | {{ partial "schema.html" . }} |
| | | </head> |
| New file |
| | |
| | | {{ if .IsHome -}} |
| | | <script type="application/ld+json"> |
| | | { |
| | | "@context": "http://schema.org", |
| | | "@type": "WebSite", |
| | | "name": "{{ .Site.Title }}", |
| | | "url": "{{ .Site.BaseURL }}", |
| | | "description": "{{ .Site.Params.description }}", |
| | | "thumbnailUrl": "{{ .Site.Params.Logo | absURL }}", |
| | | "license": "{{ .Site.Params.Copyright }}" |
| | | } |
| | | </script> |
| | | |
| | | {{ else if .IsPage }} |
| | | {{ $author := or (.Params.author) (.Site.Params.author) }} |
| | | {{ $org_name := .Site.Title }} |
| | | {{ $favicon := .Site.Params.favicon | absURL }} |
| | | <script type="application/ld+json"> |
| | | { |
| | | "@context": "http://schema.org", |
| | | "@type": "BlogPosting", |
| | | "articleSection": "{{ .Section }}", |
| | | "name": "{{ .Title | safeJS }}", |
| | | "headline": "{{ .Title | safeJS }}", |
| | | "alternativeHeadline": "{{ .Params.lead }}", |
| | | "description": "{{ if .Description }} |
| | | {{ .Description | safeJS }} |
| | | |
| | | {{ else }} |
| | | {{ if .IsPage }} |
| | | {{ .Summary }} |
| | | |
| | | |
| | | {{ end }} |
| | | |
| | | {{ end }}", |
| | | "inLanguage": {{ .Site.LanguageCode | default "en-us" }}, |
| | | "isFamilyFriendly": "true", |
| | | "mainEntityOfPage": { |
| | | "@type": "WebPage", |
| | | "@id": "{{ .Permalink }}" |
| | | }, |
| | | "author" : { |
| | | "@type": "Person", |
| | | "name": "{{ $author }}" |
| | | }, |
| | | "creator" : { |
| | | "@type": "Person", |
| | | "name": "{{ $author }}" |
| | | }, |
| | | "accountablePerson" : { |
| | | "@type": "Person", |
| | | "name": "{{ $author }}" |
| | | }, |
| | | "copyrightHolder" : { |
| | | "@type": "Person", |
| | | "name": "{{ $author }}" |
| | | }, |
| | | "copyrightYear" : "{{ .Date.Format "2006" }}", |
| | | "dateCreated": "{{ .Date.Format "2006-01-02T15:04:05.00Z" | safeHTML }}", |
| | | "datePublished": "{{ .PublishDate.Format "2006-01-02T15:04:05.00Z" | safeHTML }}", |
| | | "dateModified": "{{ .Lastmod.Format "2006-01-02T15:04:05.00Z" | safeHTML }}", |
| | | "publisher":{ |
| | | "@type":"Organization", |
| | | "name": {{ $org_name }}, |
| | | "url": {{ .Site.BaseURL }}, |
| | | "logo": { |
| | | "@type": "ImageObject", |
| | | "url": "{{ (printf "%s%s" $favicon "favicon-32x32.png") }}", |
| | | "width":"32", |
| | | "height":"32" |
| | | } |
| | | }, |
| | | "image": {{ if .Params.images }} |
| | | [{{ range $i, $e := .Params.images }} |
| | | {{ if $i }} |
| | | , |
| | | |
| | | {{ end }} |
| | | {{ $e | absURL }} |
| | | |
| | | |
| | | {{ end }} |
| | | ] |
| | | |
| | | {{ else }} |
| | | [{{ range $i, $e := .Site.Params.images }} |
| | | {{ if $i }} |
| | | , |
| | | |
| | | {{ end }} |
| | | {{ $e | absURL }} |
| | | |
| | | |
| | | {{ end }} |
| | | ] |
| | | |
| | | {{ end }}, |
| | | "url" : "{{ .Permalink }}", |
| | | "wordCount" : "{{ .WordCount }}", |
| | | "genre" : [ {{ range $index, $tag := .Params.categories }} |
| | | {{ if $index }} |
| | | , |
| | | |
| | | {{ end }} |
| | | "{{ $tag }}" |
| | | |
| | | {{ end }}], |
| | | "keywords" : [ {{ range $index, $keyword := .Params.tags }} |
| | | {{ if $index }} |
| | | , |
| | | |
| | | {{ end }} |
| | | "{{ $keyword }}" |
| | | |
| | | {{ end }}] |
| | | } |
| | | </script> |
| | | |
| | | {{ end }} |