blowfish/layouts/partials/head.html

113 lines
4.6 KiB
HTML
Raw Normal View History

2022-09-10 20:05:37 +01:00
<head>
<meta charset="utf-8" />
{{ with .Site.Language.Params.htmlCode | default .Site.LanguageCode }}
<meta http-equiv="content-language" content="{{ . }}" />
2022-09-10 20:05:37 +01:00
{{ end }}
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
2024-10-24 20:27:15 +03:00
{{/* Title logic */}}
2022-09-10 20:05:37 +01:00
{{ if .IsHome -}}
2024-10-24 20:27:15 +03:00
<title>Merox - IT Blog & Docs</title>
<meta name="title" content="Merox - IT Blog & Docs" />
2022-09-10 20:05:37 +01:00
{{- else -}}
2024-10-24 20:27:15 +03:00
<title>{{ .Title | emojify }} &middot; Merox</title>
<meta name="title" content="{{ .Title | emojify }} &middot; Merox" />
2022-09-10 20:05:37 +01:00
{{- end }}
2024-10-24 20:27:15 +03:00
2022-09-10 20:05:37 +01:00
{{/* Metadata */}}
{{ with (.Params.Summary | default .Params.Description) | default .Site.Params.description -}}
<meta name="description" content="{{ . }}" />
2022-09-10 20:05:37 +01:00
{{- end }}
{{ with .Params.Tags | default .Site.Params.keywords -}}
<meta name="keywords" content="{{ range . }}{{ . }}, {{ end -}}" />
2022-09-10 20:05:37 +01:00
{{- end }}
{{ with .Site.Params.robots }}
<meta name="robots" content="{{ . }}" />
2022-09-10 20:05:37 +01:00
{{ end }}
{{ with .Params.robots }}
<meta name="robots" content="{{ . }}" />
2022-09-10 20:05:37 +01:00
{{ end }}
<link rel="canonical" href="{{ .Permalink }}" />
2024-10-24 20:27:15 +03:00
2022-09-10 20:05:37 +01:00
{{/* Asset bundles */}}
{{ $assets := newScratch }}
{{ $cssScheme := resources.Get (printf "css/schemes/%s.css" (.Site.Params.colorScheme | default "blowfish")) }}
2022-09-10 20:05:37 +01:00
{{ if not $cssScheme }}
{{ $cssScheme = resources.Get "css/schemes/blowfish.css" }}
2022-09-10 20:05:37 +01:00
{{ end }}
{{ $assets.Add "css" (slice $cssScheme) }}
{{ $cssMain := resources.Get "css/compiled/main.css" }}
{{ $assets.Add "css" (slice $cssMain) }}
{{ $cssCustom := resources.Get "css/custom.css" }}
{{ if $cssCustom }}
{{ $assets.Add "css" (slice $cssCustom) }}
{{ end }}
{{ $bundleCSS := $assets.Get "css" | resources.Concat "css/main.bundle.css" | resources.Minify | resources.Fingerprint
"sha512" }}
<link type="text/css" rel="stylesheet" href="{{ $bundleCSS.RelPermalink }}"
integrity="{{ $bundleCSS.Data.Integrity }}" />
2024-10-24 20:27:15 +03:00
{{/* JavaScript Files */}}
2022-09-10 20:05:37 +01:00
{{ $jsAppearance := resources.Get "js/appearance.js" }}
{{ $jsAppearance = $jsAppearance | resources.ExecuteAsTemplate "js/appearance.js" . | resources.Minify | resources.Fingerprint "sha512" }}
<script type="text/javascript" src="{{ $jsAppearance.RelPermalink }}"
integrity="{{ $jsAppearance.Data.Integrity }}"></script>
2024-10-24 20:27:15 +03:00
2022-09-10 20:05:37 +01:00
{{ if .Site.Params.enableSearch | default false }}
{{ $jsFuse := resources.Get "lib/fuse/fuse.min.js" }}
{{ $jsSearch := resources.Get "js/search.js" }}
{{ $assets.Add "js" (slice $jsFuse $jsSearch) }}
2022-09-10 20:05:37 +01:00
{{ end }}
{{ if .Site.Params.enableCodeCopy | default false }}
{{ $jsCode := resources.Get "js/code.js" }}
{{ $assets.Add "js" (slice $jsCode) }}
2022-09-10 20:05:37 +01:00
{{ end }}
{{ if .Site.Params.rtl | default false }}
{{ $jsRTL := resources.Get "js/rtl.js" }}
{{ $assets.Add "js" (slice $jsRTL) }}
2022-09-10 20:05:37 +01:00
{{ end }}
{{ $jsMobileMenu := resources.Get "js/mobilemenu.js" }}
{{ $assets.Add "js" (slice $jsMobileMenu) }}
2022-09-10 20:05:37 +01:00
{{ if $assets.Get "js" }}
{{ $bundleJS := $assets.Get "js" | resources.Concat "js/main.bundle.js" | resources.Minify | resources.Fingerprint
"sha512" }}
<script defer type="text/javascript" id="script-bundle" src="{{ $bundleJS.RelPermalink }}"
2024-10-24 20:27:15 +03:00
integrity="{{ $bundleJS.Data.Integrity }}" data-copy="{{ i18n "code.copy" }}" data-copied="{{ i18n "code.copied" }}"></script>
2022-09-10 20:05:37 +01:00
{{ end }}
2024-10-24 20:27:15 +03:00
{{ if not .Site.Params.disableImageZoom | default true }}
2024-07-24 23:27:00 +08:00
{{ $zoomJS := resources.Get "lib/zoom/zoom.min.js" | resources.Fingerprint "sha512" }}
<script src="{{ $zoomJS.RelPermalink }}" integrity="{{ $zoomJS.Data.Integrity }}"></script>
{{ end }}
2024-10-24 20:27:15 +03:00
{{/* Icons and other metadata */}}
2022-09-10 20:05:37 +01:00
{{ if templates.Exists "partials/favicons.html" }}
{{ partialCached "favicons.html" .Site }}
2022-09-10 20:05:37 +01:00
{{ else }}
<link rel="apple-touch-icon" sizes="180x180" href="{{ "apple-touch-icon.png" | relURL }}" />
<link rel="icon" type="image/png" sizes="32x32" href="{{ "favicon-32x32.png" | relURL }}" />
<link rel="icon" type="image/png" sizes="16x16" href="{{ "favicon-16x16.png" | relURL }}" />
<link rel="manifest" href="{{ "site.webmanifest" | relURL }}" />
2022-09-10 20:05:37 +01:00
{{ end }}
2024-10-24 20:27:15 +03:00
{{/* Social metadata */}}
2022-09-10 20:05:37 +01:00
{{ template "_internal/opengraph.html" . }}
{{ template "_internal/twitter_cards.html" . }}
2024-10-24 20:27:15 +03:00
{{/* Schema and author information */}}
2022-09-10 20:05:37 +01:00
{{ partial "schema.html" . }}
{{ with .Site.Params.Author.name }}
2024-10-24 20:27:15 +03:00
<meta name="author" content="{{ . }}" />
{{ end }}
{{ with .Site.Params.Author.links }}
{{ range $links := . }}
{{ range $name, $url := $links }}
2024-10-24 20:27:15 +03:00
<link href="{{ $url }}" rel="me" />
{{ end }}
2022-09-10 20:05:37 +01:00
{{ end }}
{{ end }}
2024-10-24 20:27:15 +03:00
{{/* Google Analytics */}}
{{ partial "analytics/main.html" .Site }}
</head>