diff options
Diffstat (limited to 'themes/hugo-theme-stack/layouts/partials/head/opengraph')
3 files changed, 61 insertions, 0 deletions
diff --git a/themes/hugo-theme-stack/layouts/partials/head/opengraph/include.html b/themes/hugo-theme-stack/layouts/partials/head/opengraph/include.html new file mode 100644 index 0000000..3a43f48 --- /dev/null +++ b/themes/hugo-theme-stack/layouts/partials/head/opengraph/include.html @@ -0,0 +1,2 @@ +{{ partial "head/opengraph/provider/base" . }} +{{ partial "head/opengraph/provider/twitter" . }}
\ No newline at end of file diff --git a/themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/base.html b/themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/base.html new file mode 100644 index 0000000..055745d --- /dev/null +++ b/themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/base.html @@ -0,0 +1,43 @@ +{{- $title := partialCached "data/title" . .RelPermalink -}} +{{- $description := partialCached "data/description" . .RelPermalink -}} + +<meta property='og:title' {{ printf "content=%q" $title | safeHTMLAttr }}> +<meta property='og:description' {{ printf "content=%q" $description | safeHTMLAttr }}> +<meta property='og:url' content='{{ .Permalink }}'> +<meta property='og:site_name' content='{{ .Site.Title }}'> +<meta property='og:type' content=' + {{- if .IsPage -}} + article + {{- else -}} + website + {{- end -}} +'> + +{{- with .Params.locale -}} + <meta property='og:locale' content='{{ . }}'> +{{- end -}} + +{{- if .IsPage -}} + <meta property='article:section' content='{{ .Section | title }}' /> + {{- range .Params.tags -}} + <meta property='article:tag' content='{{ . }}' /> + {{- end -}} +{{- end -}} + +{{- if .IsPage -}} + {{- if not .Date.IsZero -}} + <meta property='article:published_time' content='{{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }}'/> + {{- end -}} + {{- if not .Lastmod.IsZero -}} + <meta property='article:modified_time' content='{{ .Lastmod.Format "2006-01-02T15:04:05-07:00" | safeHTML }}'/> + {{- end -}} +{{- else -}} + {{- if not .Site.Lastmod.IsZero -}} + <meta property='og:updated_time' content='{{ .Site.Lastmod.Format " 2006-01-02T15:04:05-07:00 " | safeHTML }}'/> + {{- end -}} +{{- end -}} + +{{ $image := partialCached "helper/image" (dict "Context" . "Type" "opengraph") .RelPermalink "opengraph" }} +{{- if $image.exists -}} + <meta property='og:image' content='{{ absURL $image.permalink }}' /> +{{- end -}}
\ No newline at end of file diff --git a/themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/twitter.html b/themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/twitter.html new file mode 100644 index 0000000..c39eba3 --- /dev/null +++ b/themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/twitter.html @@ -0,0 +1,16 @@ +{{- with .Site.Params.opengraph.twitter.site -}} + <meta name="twitter:site" content="@{{ . }}"> + <meta name="twitter:creator" content="@{{ . }}"> +{{- end -}} + +{{- $title := partialCached "data/title" . .RelPermalink -}} +{{- $description := partialCached "data/description" . .RelPermalink -}} + +<meta name="twitter:title" {{ printf "content=%q" $title | safeHTMLAttr }}> +<meta name="twitter:description" {{ printf "content=%q" $description | safeHTMLAttr }}> + +{{- $image := partialCached "helper/image" (dict "Context" . "Type" "opengraph") .RelPermalink "opengraph" -}} +{{- if $image.exists -}} + <meta name="twitter:card" content="{{ default `summary_large_image` .Site.Params.opengraph.twitter.card }}"> + <meta name="twitter:image" content='{{ absURL $image.permalink }}' /> +{{- end -}}
\ No newline at end of file |