aboutsummaryrefslogtreecommitdiff
path: root/themes/hugo-theme-stack/layouts/partials/head/opengraph
diff options
context:
space:
mode:
Diffstat (limited to 'themes/hugo-theme-stack/layouts/partials/head/opengraph')
-rw-r--r--themes/hugo-theme-stack/layouts/partials/head/opengraph/include.html2
-rw-r--r--themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/base.html43
-rw-r--r--themes/hugo-theme-stack/layouts/partials/head/opengraph/provider/twitter.html16
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