約3年ぶりに記事を追加するときに当ブログで使用している、HUGOを「hugo v0.138.0」にバージョンアップをさせてしまったら、エラーが沢山出てしまってHtmlから出力出来なったので、色々調べて解決したのでメモを残します。

使用しているテーマは「hugo-tranquilpeak-theme」になります。

目次

古いgoogle analytics tagでエラーが起きる

エラーメッセージ

ERROR render of "term" failed: "\hugoblog\eiteblog_tranquilpeak\layouts\taxonomy\category.html:1:3": execute of template failed: template: taxonomy/category.html:1:3: executing "taxonomy/category.html" at <partial "head.html" .>: error calling partial: execute of template failed: html/template:partials/head.html:62:18: no such template "_internal/google_analytics_async.html"
ERROR render of "404" failed: "\hugoblog\eiteblog_tranquilpeak\layouts\404.html:1:3": execute of template failed: template: 404.html:1:3: executing "404.html" at <partial "head.html" .>: error calling partial: execute of template failed: html/template:partials/head.html:62:18: no such template "_internal/google_analytics_async.html"
ERROR render of "page" failed: "\hugoblog\eiteblog_tranquilpeak\layouts\_default\single.html:1:3": execute of template failed: template: _default/single.html:1:3: executing "_default/single.html" at <partial "head.html" .>: error calling partial: execute of template failed: html/template:partials/head.html:62:18: no such template "_internal/google_analytics_async.html"
Total in 1257 ms
Error: error building site: render: failed to render pages: render of "home" failed: "\hugoblog\eiteblog_tranquilpeak\layouts\index.html:1:3": execute of template failed: template: index.html:1:3: executing "index.html" at <partial "head.html" .>: error calling partial: execute of template failed: html/template:partials/head.html:62:18: no such template "_internal/google_analytics_async.html"

tranquilpeakテーマだとhugoプロジェクトディレクトリ内のthemeディレクトリ配下にある以下のファイルを修正する 「hugosite/themes/hugo-tranquilpeak-theme/layouts/partials/head.html」

google analyticsは使っていないので、取り急ぎ下記コードを削除でエラーは消える

    {{ if or .Params.googleAnalytics.async .Params.ga.async }}
      {{ template "_internal/google_analytics_async.html" . }}
    {{ else }}
      {{ template "_internal/google_analytics.html" . }}
    {{ end }}

参考サイト:Hugoのバージョンアップで発生したエラーを修正する - タカツのサイト

inhibitPaths から InihibitPageに変更

ERROR render of "sitemap" failed: "\\HashiNas4116B5\home\work\git\hugoblog\eiteblog_tranquilpeak\layouts\sitemap.xml:3:13": execute of template failed: template: sitemap.xml:3:13: executing "sitemap.xml" at <where $pages ".File.Path" "not in" $.Site.Params.InhibitPaths>: error calling where: runtime error: invalid memory address or nil pointer dereference

.InihibitPaths を .InihibitPage に変更する

「hugoblog\eiteblog_tranquilpeak\layouts\partials\meta.html」

該当エラー
#{{ if or (in $.Site.Params.InhibitSections .Section) (in $.Site.Params.InhibitPaths .File.Path) }}<meta name="robots" content="noindex">{{ end }}

エラー消える
{{ if or (in $.Site.Params.InhibitSections .Section) (in $.Site.Params.InhibitPage .Page.Path) }}<meta name="robots" content="noindex">{{ end }}

「hugoblog\eiteblog_tranquilpeak\config.toml」

#inhibitPaths = ["privacy.md","about.md"] エラーが出たのでPathsをPageに変える
  inhibitPage = ["privacy.md","about.md"]

sitemapも修正「hugoblog\eiteblog_tranquilpeak\layouts\sitemap.xml」

InhibitPaths から InhibitPageに変更 他に".File.Path" を “.Page.Path"に修正しています。

#{{- $pages = where $pages ".File.Path" "not in" $.Site.Params.InhibitPaths -}}

{{- $pages = where $pages ".Page.Path" "not in" $.Site.Params.InhibitPage -}}

参考: Hugoでnoindexタグを設定する(フロントマター使用) - タカツのサイト

authorもエラーが出ていたので変更する

Authorのエラー

ERROR deprecated: .Site.Author was deprecated in Hugo v0.124.0 and will be removed in Hugo 0.137.0. Implement taxonomy 'author' or use .Site.Params.Author instead.

「hugoblog\eiteblog_tranquilpeak\config.toml」

[author]
  name = "イーアイテ E・I・Te"
  bio = "主にLinuxやサーバの事など徒然と書いていきます。"
  job = "Your job title"
  location = "Japan"
↓に
[params.author]
  name = "イーアイテ E・I・Te"
  bio = "主にLinuxやサーバの事など徒然と書いていきます。"
  job = "Your job title"
  location = "Japan"

参考 Hugoのバージョンアップで発生したエラーを修正する - タカツのサイト

hugoの「tranquilpeak/layouts/partials/about.html」

{{ .Site.Author.location }} を {{ .Site.Params.author.location }} に変更

configのdisqusも廃止になったのでdisqus.shortnameに修正

ERROR deprecated: .Site.DisqusShortname was deprecated in Hugo v0.120.0 and will be removed in Hugo 0.137.0. Use .Site.Config.Services.Disqus.Shortname instead.

「hugoblog\eiteblog_tranquilpeak\config.toml」

  [params.comment]
    [params.comment.disqus]
#↓に変更
  [params.comment]
    [params.comment.disqus.shortname]

参考 Hugoの「.Site.IsServer」が非推奨になったのでテンプレート修正 -STYSK BLOG

以上になります。

お疲れ様でした。