Layout improvements

- Tagline
- Share buttons
- JSON LD
- Tags
- Style Fixes
This commit is contained in:
Alexandre Vicenzi 2020-10-17 14:40:58 +02:00
parent cd5751ef14
commit b607c6857a
11 changed files with 317 additions and 18 deletions

View file

@ -66,6 +66,10 @@
integrity="sha256-MAgcygDRahs+F/Nk5Vz387whB4kSK9NXlDN3w58LLq0="
crossorigin="anonymous"></script>
<script src="{{ `js/jquery.min.js` | relURL }}"></script>
<script src="{{ `js/soho.js` | relURL }}"></script>
{{ range $.Site.Params.customJs -}}
<script src="{{ . | relURL }}"></script>
{{- end}}

View file

@ -1,6 +1,7 @@
{{ define "main" -}}
<div class="post">
<h1>{{ .Title }}</h1>
<h1 class="title">{{ .Title }}</h1>
{{ with .Params.tagline }}<span class="tagline">{{ . }}</span>{{ end }}
{{ if ne .Type "page" -}}
<div class="post-date">
@ -8,7 +9,15 @@
</div>
{{- end }}
<div>
{{ .Content }}
</div>
{{ partial "tags.html" . }}
{{ if (and (ne .Params.DisableShare true) (ne .Params.disable_share true)) -}}
{{ partial "share.html" . }}
{{- end }}
</div>
{{ if (and .Site.DisqusShortname (ne .Params.DisableComments true) (ne .Params.disable_comments true)) -}}

View file

@ -1,13 +1,15 @@
<footer>
<div>
&copy; {{ $.Site.Params.Copyright }} {{ now.Format "2006"}}
<p>
&copy; {{ $.Site.Params.Copyright }} {{ now.Format "2006"}}
{{ with $.Site.Params.License -}}
&middot; <a href="{{ $.Site.Params.licenseURL }}" target="_blank">{{ . | safeHTML }}</a>
{{- end }}
{{ with $.Site.Params.License -}}
&middot; <a href="{{ $.Site.Params.licenseURL }}" target="_blank">{{ . | safeHTML }}</a>
{{- end }}
{{ with $.Site.Params.BuiltWith -}}
&middot; Build with <a href="https://gohugo.io/" target="_blank">Hugo</a> & <a href="https://themes.gohugo.io/soho/" target="_blank">Soho</a> theme
{{- end }}
{{ with $.Site.Params.BuiltWith -}}
&middot; Build with <a href="https://gohugo.io/" target="_blank">Hugo</a> & <a href="https://themes.gohugo.io/soho/" target="_blank">Soho</a> theme
{{- end }}
</p>
</div>
</footer>

View file

@ -0,0 +1,134 @@
{{ $ISO8601 := "2006-01-02T15:04:05-07:00" }}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type":"Person",
"@id": {{ .Site.BaseURL | printf "%s#author" }},
"name": {{ .Site.Params.author }},
"image": {
"@type":"ImageObject",
{{ with .Site.Params.gravatar -}}
"url": {{ md5 . | printf `"https://www.gravatar.com/avatar/%s?s=400&d=mp"` | safeJS }}
{{- else }}
{{ with .Site.Params.profilePicture -}}
"url": {{ . | absURL | printf `"%s"` | safeJS }}
{{ end -}}
{{ end }}
},
"description": {{ .Site.Params.description }}
},
{
"@type": "WebSite",
"@id": {{ .Site.BaseURL | printf "%s#website" }},
"url": {{ .Site.BaseURL }},
"name": {{ .Site.Title }},
"description": {{ .Site.Params.description }},
"publisher": {
"@id": {{ $.Site.BaseURL | printf "%s#author" }}
},
"inLanguage": {{ .Site.LanguageCode }}
},
{{- with .Site.Params.images -}}
{{- range . }}
{
"@type": "ImageObject",
"url": {{ . | absURL | printf `"%s"` | safeJS }},
"caption": {{ $.Site.Title }}
},
{{- end }}
{{- end }}
{
"@type": "WebPage",
"@id": {{ .Permalink | printf "%s#webpage" }},
"url": {{ .Permalink }},
"name": {{ .Title }},
"isPartOf": {
"@id": {{ .Site.BaseURL | printf "%s#website" }}
},
"about": {
"@id": {{ .Site.BaseURL | printf "%s#author" }}
},
{{- if not .PublishDate.IsZero }}
"datePublished": {{ .PublishDate.Format $ISO8601 }},
{{- end }}
{{- if not .Lastmod.IsZero }}
"dateModified": {{ .Lastmod.Format $ISO8601 }},
{{- end }}
"description": {{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end }},
"inLanguage": {{ .Site.LanguageCode }},
"potentialAction": [
{
"@type": "ReadAction",
"target": [
{{ .Permalink }}
]
}
]
}{{ if .IsPage }},
{
"@type": "Article",
"isPartOf": {
"@id": {{ .Permalink | printf "%s#webpage" }}
},
"mainEntityOfPage": {
"@id": {{ .Permalink | printf "%s#webpage" }}
},
"headline": {{ .Title }},
{{- with .Params.images }}
"image": [
{{- range $idx, $url := . -}}{{- if $idx -}},{{- end }}
{{ $url | absURL -}}
{{ end }}
],
{{- end }}
{{- if not .PublishDate.IsZero }}
"datePublished": {{ .PublishDate.Format $ISO8601 }},
{{- end }}
{{- if not .Lastmod.IsZero }}
"dateModified": {{ .Lastmod.Format $ISO8601 }},
{{- end }}
"publisher": {
"@id": {{ .Site.BaseURL | printf "%s#author" }}
},
"keywords": [
{{- if isset .Params "tags" -}}
{{- range $idx, $cat := .Params.tags -}}
{{- with $.Site.GetPage "tags" -}}
{{- with .GetPage $cat -}}{{- if $idx -}},{{- end }}
{{ .Title -}}
{{ end -}}
{{- end -}}
{{- end -}}
{{- end }}
],
"articleSection": [
{{- if isset .Params "categories" -}}
{{- range $idx, $cat := .Params.categories -}}
{{- with $.Site.GetPage "categories" -}}
{{- with .GetPage $cat -}}{{- if $idx -}},{{- end }}
{{ .Title -}}
{{ end -}}
{{- end -}}
{{- end -}}
{{- end }}
],
"inLanguage": {{ .Site.LanguageCode }},
"author": {
"@type": "Person",
"name": {{ .Params.author }}
},
"potentialAction": [
{
"@type": "CommentAction",
"name": "Comment",
"target": [
{{ .Permalink | printf "%s#comments" }}
]
}
]
}{{ end }}
]
}
</script>

View file

@ -5,3 +5,5 @@
{{ template "_internal/twitter_cards.html" . }}
{{ template "_internal/opengraph.html" . }}
{{ partial "json-ld.html" . }}

View file

@ -0,0 +1,31 @@
<div class="share-buttons">
<a class="twitter-share-button"
href="#"
title="Share on Twitter"
data-url="{{ .Permalink }}"
data-text="{{ .Title }}"><i class="fab fa-twitter"></i></a>
<a class="linkedin-share-button"
href="#"
title="Share on LinkedIn"
data-url="{{ .Permalink }}"
data-text="{{ .Title }}"><i class="fab fa-linkedin-in"></i></a>
<a class="facebook-share-button"
href="#"
title="Share on Facebook"
data-url="{{ .Permalink }}"
data-text="{{ .Title }}"><i class="fab fa-facebook"></i></a>
<a class="telegram-share-button"
href="#"
title="Share on Telegram"
data-url="{{ .Permalink }}"
data-text="{{ .Title }}"><i class="fab fa-telegram"></i></a>
<a class="pinterest-share-button"
href="#"
title="Share on Pinterest"
data-url="{{ .Permalink }}"
data-text="{{ .Title }}"><i class="fab fa-pinterest"></i></a>
</div>

View file

@ -0,0 +1,13 @@
<div>
<ul class="tags">
{{- range $tag := $.Params.tags -}}
{{- with $.Site.GetPage "tags" -}}
{{- with .GetPage $tag }}
<li>
<a href="{{ .Permalink }}" class="tag-link">{{ .Title }}</a>
</li>
{{ end -}}
{{- end -}}
{{- end -}}
</ul>
</div>