Skip to content

tamacjp/Hugo-define-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hugo の {{define}}-{{template}} を理解する

  • {{define}} は layouts 配下のどのファイルに書かれていても最初に全て適用(定義)される
    • このため例えば index.html_default/single.html で同名の {{define}} を書くと
      template: redefinition of template "hoge"
      と言われてエラーになる
  • どこからも参照されない layouts 配下のファイル(拡張子が何でも)に {{define}} を書いておくこともできる
  • {{define}} 内の名前空間は {{template}} のふたつめのパラメタ(pipeline)になるので定義されるファイルの名前空間とは無関係
    • SECTION1/single.html{{define "fuga"}}{{.Section}}{{end}}
    • SECTION2/single.html{{template "fuga" .}} → SECTION2
  • つまり {{define}} はファイルを分離しない partial のようなもので、変数のような使い方はできない
    • Djangoの {% block %}-{% extends %} とは考え方が違う

About

Hugo の {{define}}-{{template}} を理解する

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages