Hugo는 Go언어로 작성된 정적 사이트 생성기이다.
Hugo를 사용하면서 참고할만한 사이트가 공식 문서 외에 없어서 내 벨로그에 정리하고자 한다.
config/config.json
파일에서 가져온 데이터이다.<h4>{{ .Site.Params.siteTitle }}</h4>
<a href="{{ 'url주소' | relURL }}">URL 접속</a>
{{ with $.Site.Params.type }}
<!-- ... -->
{{ end }}
---
로 되어있는 것을 보아 YAML 형식인 것을 알 수 있다.Layout
과 Title
속성은 반드시 포함해야 한다.Layout
: 콘텐츠 섹션에 해당하는 레이아웃 디렉토리에서 동일한 이름의 레이아웃을 찾는다.Title
: 콘텐츠의 제목Type
: 콘텐츠 유형, Type
이 지정되지 않은 경우 디렉토리에서 자동으로 파생된다.---
Layout: page
Title: 'title'
---
baseof.html
이 위치해야 한다.{{ define "main" }}
<!-- ... -->
{{ end }}
layouts/partials/*<PARTIALNAME>.html
themes/<THEME>/layouts/partials/*<PARTIALNAME>.html
{{ partial "page/header" . }}
print
: 해당 내용을 문자열로 선언한다.safeHTML
: 작성한 문자열을 HTML 문서로 선언한다.{{ print "<!-- SECTION -->" | safeHTML }}
range
: range
함수 (반복문){{ range .Site.Params.data }}
<!-- ... -->
{{ end }}
$변수명
: 사용자 정의 변수:=
: :=
을 사용하면 var
와 명시적인 타입(int
, bool
...) 생략 가능{{ $data := .Site.Params.data }}
eq(arg1, arg2)
: 인수 2개가 같으면 true
리턴, 같지 않으면 false
리턴eq($Site.Params.title "title")