diff options
| -rw-r--r-- | hugo.toml | 1 | ||||
| -rw-r--r-- | themes/danix-xyz-hacker/layouts/_default/baseof.html | 6 | ||||
| -rw-r--r-- | themes/danix-xyz-hacker/layouts/partials/head-meta.html | 38 |
3 files changed, 40 insertions, 5 deletions
@@ -109,6 +109,7 @@ enableRobotsTXT = true siteName = "danix.xyz" author = "Danilo Macrì" email = "danix@danix.xyz" + twitterHandle = "" # Theme options readingTime = true diff --git a/themes/danix-xyz-hacker/layouts/_default/baseof.html b/themes/danix-xyz-hacker/layouts/_default/baseof.html index 9370157..1f5dc97 100644 --- a/themes/danix-xyz-hacker/layouts/_default/baseof.html +++ b/themes/danix-xyz-hacker/layouts/_default/baseof.html @@ -3,11 +3,7 @@ <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> - <meta name="description" content="{{ .Site.Params.siteDescription }}"> - <meta property="og:locale" content="{{ .Site.Language.Params.locale }}"> - <meta property="og:type" content="website"> - <meta property="og:url" content="{{ .Permalink }}"> - <meta property="og:site_name" content="{{ .Site.Title }}"> + {{ partial "head-meta.html" . }} <title>{{ .Title }}{{ if ne .Title .Site.Title }} — {{ .Site.Title }}{{ end }}</title> <!-- Favicon --> diff --git a/themes/danix-xyz-hacker/layouts/partials/head-meta.html b/themes/danix-xyz-hacker/layouts/partials/head-meta.html new file mode 100644 index 0000000..cd4e88c --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/partials/head-meta.html @@ -0,0 +1,38 @@ +{{/* description: per-page excerpt wins over site-wide description */}} +{{ $description := .Site.Language.Params.siteDescription }} +{{ with .Params.excerpt }}{{ $description = . }}{{ end }} + +{{/* og:type: "article" only for single content pages that have a date */}} +{{ $ogType := "website" }} +{{ if and (eq .Kind "page") .Date }}{{ $ogType = "article" }}{{ end }} + +{{/* og:image: page image wins; fall back to default dark thumbnail */}} +{{ $ogImage := printf "%s%s" .Site.BaseURL "images/default_thumbnail_dark.png" }} +{{ with .Params.image }}{{ $ogImage = printf "%s%s" $.Site.BaseURL (strings.TrimLeft "/" .) }}{{ end }} + +{{/* author: page-level param wins; fall back to site param */}} +{{ $author := .Site.Params.author }} +{{ with .Params.author }}{{ $author = . }}{{ end }} + +<meta name="description" content="{{ $description }}"> + +<meta property="og:title" content="{{ .Title }}"> +<meta property="og:description" content="{{ $description }}"> +<meta property="og:type" content="{{ $ogType }}"> +<meta property="og:url" content="{{ .Permalink }}"> +<meta property="og:site_name" content="{{ .Site.Title }}"> +<meta property="og:locale" content="{{ .Site.Language.Params.locale }}"> +<meta property="og:image" content="{{ $ogImage }}"> + +{{ if eq $ogType "article" }} +<meta property="article:published_time" content="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}"> +<meta property="article:author" content="{{ $author }}"> +{{ end }} + +<meta name="twitter:card" content="summary_large_image"> +<meta name="twitter:title" content="{{ .Title }}"> +<meta name="twitter:description" content="{{ $description }}"> +<meta name="twitter:image" content="{{ $ogImage }}"> +{{ with .Site.Params.twitterHandle }} +<meta name="twitter:site" content="@{{ . }}"> +{{ end }} |
