133 lines
3.6 KiB
HTML
133 lines
3.6 KiB
HTML
{{- $title := .Title | default .Site.Title -}}
|
|
{{- $description := .Description | default .Summary | default .Site.Params.description | default .Site.Title -}}
|
|
{{- $image := .Params.image | default .Site.Params.seo.default_image | default "/assets/images/logo.png" -}}
|
|
{{- $image = $image | absURL -}}
|
|
{{- $url := .Permalink | default .RelPermalink | absURL -}}
|
|
{{- $siteName := .Site.Title -}}
|
|
{{- $logo := .Site.Params.seo.logo | default "/assets/images/logo.png" | absURL -}}
|
|
{{- $author := .Params.author | default .Site.Params.author | default .Site.Title -}}
|
|
{{- $datePublished := .Date.Format "2006-01-02T15:04:05Z07:00" -}}
|
|
{{- $dateModified := .Lastmod.Format "2006-01-02T15:04:05Z07:00" -}}
|
|
{{- $keywords := delimit (.Keywords | default .Site.Params.keywords | default (slice)) ", " -}}
|
|
|
|
<!-- Enhanced WebSite Schema -->
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": "WebSite",
|
|
"name": "{{ $siteName }}",
|
|
"description": "{{ .Site.Params.description }}",
|
|
"url": "{{ .Site.BaseURL }}",
|
|
"logo": {
|
|
"@type": "ImageObject",
|
|
"url": "{{ $logo }}",
|
|
"width": 400,
|
|
"height": 400
|
|
},
|
|
"potentialAction": {
|
|
"@type": "SearchAction",
|
|
"target": {
|
|
"@type": "EntryPoint",
|
|
"urlTemplate": "{{ .Site.BaseURL }}search?q={search_term_string}"
|
|
},
|
|
"query-input": "required name=search_term_string"
|
|
},
|
|
"inLanguage": "fr-FR",
|
|
"dateModified": "{{ now.Format "2006-01-02T15:04:05Z07:00" }}"
|
|
}
|
|
</script>
|
|
|
|
<!-- Enhanced Article Schema -->
|
|
{{ if .IsPage }}
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": ["Article", "TechArticle"],
|
|
"headline": "{{ $title }}",
|
|
"description": "{{ $description }}",
|
|
"image": {
|
|
"@type": "ImageObject",
|
|
"url": "{{ $image }}",
|
|
"width": 1200,
|
|
"height": 630
|
|
},
|
|
"url": "{{ $url }}",
|
|
"author": {
|
|
"@type": "Person",
|
|
"name": "{{ $author }}",
|
|
"url": "{{ .Site.BaseURL }}",
|
|
"sameAs": [
|
|
"https://twitter.com/mistergeekfrance",
|
|
"https://www.linkedin.com/in/mistergeek",
|
|
"https://www.youtube.com/@mistergeek"
|
|
]
|
|
},
|
|
"publisher": {
|
|
"@type": "Organization",
|
|
"name": "{{ $siteName }}",
|
|
"url": "{{ .Site.BaseURL }}",
|
|
"logo": {
|
|
"@type": "ImageObject",
|
|
"url": "{{ $logo }}",
|
|
"width": 400,
|
|
"height": 400
|
|
}
|
|
},
|
|
"datePublished": "{{ $datePublished }}",
|
|
"dateModified": "{{ $dateModified }}",
|
|
"inLanguage": "fr-FR",
|
|
"keywords": "{{ $keywords }}",
|
|
"articleSection": "{{ .Section | default "general" }}",
|
|
"wordCount": {{ .WordCount }},
|
|
"mainEntityOfPage": {
|
|
"@type": "WebPage",
|
|
"@id": "{{ $url }}"
|
|
}
|
|
}
|
|
</script>
|
|
{{ end }}
|
|
|
|
<!-- Tutorial-specific Schema -->
|
|
{{ if eq .Section "tutorials" }}
|
|
{{ partial "seo/schema-tutorial.html" . }}
|
|
{{ end }}
|
|
|
|
<!-- Enhanced Article Schema for blog posts -->
|
|
{{ if or (eq .Section "blog") (eq .Section "posts") }}
|
|
{{ partial "seo/schema-article.html" . }}
|
|
{{ end }}
|
|
|
|
<!-- Local SEO Schema -->
|
|
{{ if .IsHome }}
|
|
{{ partial "seo/schema-local.html" . }}
|
|
{{ end }}
|
|
|
|
<!-- Breadcrumb Schema -->
|
|
{{ if and .IsPage .Section }}
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": "BreadcrumbList",
|
|
"itemListElement": [
|
|
{
|
|
"@type": "ListItem",
|
|
"position": 1,
|
|
"name": "Accueil",
|
|
"item": "{{ .Site.BaseURL }}"
|
|
}{{ if .Section }},
|
|
{
|
|
"@type": "ListItem",
|
|
"position": 2,
|
|
"name": "{{ .Section | humanize }}",
|
|
"item": "{{ .Site.BaseURL }}{{ .Section }}/"
|
|
}{{ if .Title }},
|
|
{
|
|
"@type": "ListItem",
|
|
"position": 3,
|
|
"name": "{{ $title }}",
|
|
"item": "{{ $url }}"
|
|
}{{ end }}{{ end }}
|
|
]
|
|
}
|
|
</script>
|
|
{{ end }} |