summaryrefslogtreecommitdiff
path: root/layouts/_partials/head
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/_partials/head')
-rw-r--r--layouts/_partials/head/css.html21
-rw-r--r--layouts/_partials/head/js.html16
-rw-r--r--layouts/_partials/head/meta.html27
-rw-r--r--layouts/_partials/head/seo.html46
4 files changed, 110 insertions, 0 deletions
diff --git a/layouts/_partials/head/css.html b/layouts/_partials/head/css.html
new file mode 100644
index 0000000..d4e894e
--- /dev/null
+++ b/layouts/_partials/head/css.html
@@ -0,0 +1,21 @@
+{{- with resources.Get "css/main.css" -}}
+ {{- $allStylesheets := slice
+ .
+ (resources.Get "css/header.css")
+ (resources.Get "css/navmenu.css")
+ (resources.Get "css/footer.css")
+ (resources.Get "css/post-card.css")
+ (resources.Get "css/page.css")
+ (resources.Get "css/post.css")
+ (resources.Get "css/list-navigation.css")
+ (resources.Get "css/search.css")
+ -}}
+ {{- $cssBundle := $allStylesheets | resources.Concat "css/bundle.css" -}}
+
+ {{- if hugo.IsDevelopment -}}
+ <link rel="stylesheet" href="{{ $cssBundle.RelPermalink }}">
+ {{- else -}}
+ {{- $css := $cssBundle | minify | fingerprint -}}
+ <link rel="stylesheet" href="{{ $css.RelPermalink }}" integrity="{{ $css.Data.Integrity }}" crossorigin="anonymous">
+ {{- end -}}
+{{- end -}}
diff --git a/layouts/_partials/head/js.html b/layouts/_partials/head/js.html
new file mode 100644
index 0000000..0baf831
--- /dev/null
+++ b/layouts/_partials/head/js.html
@@ -0,0 +1,16 @@
+{{- with resources.Get "js/main.js" }}
+ {{- $opts := dict
+ "minify" (not hugo.IsDevelopment)
+ "sourceMap" (cond hugo.IsDevelopment "external" "")
+ "targetPath" "js/main.js"
+ }}
+ {{- with . | js.Build $opts }}
+ {{- if hugo.IsDevelopment }}
+ <script defer src="{{ .RelPermalink }}"></script>
+ {{- else }}
+ {{- with . | fingerprint }}
+ <script defer src="{{ .RelPermalink }}" integrity="{{ .Data.Integrity }}" crossorigin="anonymous"></script>
+ {{- end }}
+ {{- end }}
+ {{- end }}
+{{- end -}}
diff --git a/layouts/_partials/head/meta.html b/layouts/_partials/head/meta.html
new file mode 100644
index 0000000..f739838
--- /dev/null
+++ b/layouts/_partials/head/meta.html
@@ -0,0 +1,27 @@
+{{- /* Basic Meta */ -}}
+<meta name="author" content="{{ site.Params.author.name | default site.Title }}">
+<meta name="robots" content="index, follow">
+
+{{- /* Open Graph */ -}}
+<meta property="og:title" content="{{ .Title | default site.Title }}">
+<meta property="og:description" content="{{ .Description | default .Summary }}">
+<meta property="og:type" content="{{ if .IsHome }}website{{ else }}article{{ end }}">
+<meta property="og:url" content="{{ .Permalink }}">
+<meta property="og:site_name" content="{{ site.Title }}">
+{{- with site.Params.logo }}
+ <meta property="og:image" content="{{ . | absURL }}">
+{{- end }}
+{{- if .IsPage }}
+ <meta property="article:published_time" content="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">
+ {{- with .Lastmod }}
+ <meta property="article:modified_time" content="{{ .Format "2006-01-02T15:04:05Z07:00" }}">
+ {{- end }}
+{{- end }}
+
+{{- /* Twitter Card */ -}}
+<meta name="twitter:card" content="summary_large_image">
+<meta name="twitter:title" content="{{ .Title | default site.Title }}">
+<meta name="twitter:description" content="{{ .Description | default .Summary }}">
+{{- with site.Params.logo }}
+ <meta name="twitter:image" content="{{ . | absURL }}">
+{{- end }}
diff --git a/layouts/_partials/head/seo.html b/layouts/_partials/head/seo.html
new file mode 100644
index 0000000..628ea2c
--- /dev/null
+++ b/layouts/_partials/head/seo.html
@@ -0,0 +1,46 @@
+<script type="application/ld+json">
+{
+ "@context": "https://schema.org",
+ "@type": "{{ if .IsPage }}Article{{ else }}WebSite{{ end }}",
+ "url": {{ .Permalink }},
+ "name": {{ with .Title }}{{ . }}{{ else }}{{ site.Title }}{{ end }},
+ "headline": {{ with .Title }}{{ . }}{{ else }}{{ site.Title }}{{ end }},
+ "description": {{ with .Description }}{{ . }}{{ else }}{{ site.Params.description | default site.Title }}{{ end }},
+ {{- with .Params.images }}
+ "image": [
+ {{- range $i, $image := . }}
+ {{- if $i }},{{ end }}
+ "{{ $image | absURL }}"
+ {{- end }}
+ ],
+ {{- else }}
+ {{- with site.Params.logo }}
+ "image": ["{{ . | absURL }}"],
+ {{- end }}
+ {{- end }}
+ {{- if .IsPage }}
+ "datePublished": "{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}",
+ {{- with .Lastmod }}
+ "dateModified": "{{ .Format "2006-01-02T15:04:05Z07:00" }}",
+ {{- end }}
+ {{- end }}
+ "author": {
+ "@type": "Person",
+ "name": "{{ site.Params.author.name | default site.Title }}"
+ },
+ "publisher": {
+ "@type": "Organization",
+ "name": "{{ site.Title }}"
+ {{- with site.Params.logo }},
+ "logo": {
+ "@type": "ImageObject",
+ "url": "{{ . | absURL }}"
+ }
+ {{- end }}
+ },
+ "mainEntityOfPage": {
+ "@type": "WebPage",
+ "@id": {{ .Permalink }}
+ }
+}
+</script>