Hugoで簡単にお手軽SEO対策( JSON-LD + meta + h1 + などなど)
概要
ブログ初日なのでSEO対策の対応に追われてみます
JSON-LD
まずJSON-LDをなんとかします。
具体的にはlayouts/partials/head.html
の要素<head>
の中にこれを書きます。
{{ if eq .Kind "page" }}
<script type="application/ld+json">
{
"@context":"https://schema.org/",
"@type":"BlogPosting",
"headline":"{{ .Title }}",
"dateModified":"{{ .Lastmod.Format "2006-01-02T15:04:05Z0700" }}",
"datePublished":"{{ .Date.Format "2006-01-02T15:04:05Z0700" }}",
"author":[
{
"@type":"Person",
"name":"{{ .Site.Title }}",
"url":"{{ .Site.BaseURL }}"
}
]
}
</script>
{{ end }}
meta
忘れちゃいけない基本中の基本がmeta
です。
description
まずはdescriptionです。これは直接的でいいですね
<meta name="description" content="{{ .Summary |truncate 100 }}">
keyword
これは簡単のためtagsを使います。
省略したい時もあるかもなのでwith
もつけておきます。
{{ with .Params.tags }}
<meta name="keywords" content="{{ delimit . "," }}">
{{ end }}
h1
要素<h1>
は各ページに1つづつしか使わないべきのようです。
<h1>
はブログのヘッダーに使うことにして、
あとは諦めて基本的には<h2>
以降を使うよう心がけます。
canonical
正規のURLというのを記載しないと重複とみなされたりするようです。
一応記事とホームには追加するようにしておきます。
{{ if eq .Kind "page" }}
<link rel="canonical" href="{{ .Permalink }}">
{{ end }}
{{ if eq .Kind "home" }}
<link rel="canonical" href="{{ .Site.BaseURL }}">
{{ end }}