From 6c4e094c91ce143f3895550a28cf0b8057c23e57 Mon Sep 17 00:00:00 2001 From: Aditya Telange <21258296+adityatelange@users.noreply.github.com> Date: Sun, 11 Oct 2020 16:31:13 +0530 Subject: [PATCH] templates: Add Twitter Cards, OpenGraph, Schema This code is licensed under Apache License 2.0 and is part of https://github.com/gohugoio/hugo --- layouts/partials/templates/opengraph.html | 57 +++++++++++++++++++ layouts/partials/templates/schema.html | 23 ++++++++ layouts/partials/templates/twitter_cards.html | 29 ++++++++++ 3 files changed, 109 insertions(+) create mode 100644 layouts/partials/templates/opengraph.html create mode 100644 layouts/partials/templates/schema.html create mode 100644 layouts/partials/templates/twitter_cards.html diff --git a/layouts/partials/templates/opengraph.html b/layouts/partials/templates/opengraph.html new file mode 100644 index 00000000..07d9775d --- /dev/null +++ b/layouts/partials/templates/opengraph.html @@ -0,0 +1,57 @@ + + + + +{{ with $.Params.images }}{{ range first 6 . -}} + +{{ end }}{{ else -}} +{{- $images := $.Resources.ByType "image" -}} +{{- $featured := $images.GetMatch "*feature*" -}} +{{- if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end -}} +{{- with $featured -}} + +{{ else -}} +{{- with $.Site.Params.images -}} + +{{ end }}{{ end }}{{ end }} + +{{- $iso8601 := "2006-01-02T15:04:05-07:00" -}} +{{- if .IsPage }} +{{- if not .PublishDate.IsZero }} +{{ else if not .Date.IsZero }} +{{ end }} +{{- if not .Lastmod.IsZero }}{{ end }} +{{- else }} +{{- if not .Date.IsZero }} +{{- end }} +{{- end }}{{/* .IsPage */}} + +{{- with .Params.audio }}{{ end }} +{{- with .Params.locale }}{{ end }} +{{- with .Site.Params.title }}{{ end }} +{{- with .Params.videos }} +{{- range . }} + +{{ end }}{{ end }} + +{{- /* If it is part of a series, link to related articles */}} +{{- $permalink := .Permalink }} +{{- $siteSeries := .Site.Taxonomies.series }}{{ with .Params.series }} +{{- range $name := . }} + {{- $series := index $siteSeries $name }} + {{- range $page := first 6 $series.Pages }} + {{- if ne $page.Permalink $permalink }}{{ end }} + {{- end }} +{{ end }}{{ end }} + +{{- if .IsPage }} +{{- range .Site.Authors }}{{ with .Social.facebook }} +{{ end }}{{ with .Site.Social.facebook }} +{{ end }} + +{{- with .Params.tags }}{{ range first 6 . }} +{{ end }}{{ end }} +{{- end }}{{ end }} + +{{- /* Facebook Page Admin ID for Domain Insights */}} +{{- with .Site.Social.facebook_admin }}{{ end }} diff --git a/layouts/partials/templates/schema.html b/layouts/partials/templates/schema.html new file mode 100644 index 00000000..0cbae153 --- /dev/null +++ b/layouts/partials/templates/schema.html @@ -0,0 +1,23 @@ + + + +{{- if .IsPage }}{{ $ISO8601 := "2006-01-02T15:04:05-07:00" }}{{ if not .PublishDate.IsZero }} +{{ end }} +{{ if not .Lastmod.IsZero }}{{ end }} + +{{ with $.Params.images }}{{ range first 6 . -}} + +{{ end }}{{ else -}} +{{- $images := $.Resources.ByType "image" -}} +{{- $featured := $images.GetMatch "*feature*" -}} +{{- if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end -}} +{{- with $featured -}} + +{{ else -}} +{{- with $.Site.Params.images -}} + +{{ end }}{{ end }}{{ end }} + + + +{{- end }} diff --git a/layouts/partials/templates/twitter_cards.html b/layouts/partials/templates/twitter_cards.html new file mode 100644 index 00000000..cbe2430b --- /dev/null +++ b/layouts/partials/templates/twitter_cards.html @@ -0,0 +1,29 @@ +{{- with $.Params.images -}} + + +{{ else -}} +{{- $images := $.Resources.ByType "image" -}} +{{- $featured := $images.GetMatch "*feature*" -}} +{{- if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end -}} +{{- with $featured -}} + + +{{- else -}} +{{- with $.Site.Params.images -}} + + +{{ else -}} + +{{- end -}} +{{- end -}} +{{- end }} + + +{{ with .Site.Social.twitter -}} + +{{ end -}} +{{ range .Site.Authors }} +{{ with .twitter -}} + +{{ end -}} +{{ end -}} \ No newline at end of file