Hugoで静的サイトを作る(3) 細かい設定 ~ ビルド
前回のpostでデザインの修正を行ったので、あとは設定ファイル等細かい部分を作っていきます。
faviconを追加する
今回のthemeではfaviconが設定されていません。themeの内容を確認したところ、themes/robust/layouts/partials/meta.html
がすべてのページで読み込まれる、headタグ内に挿入されるpartialの用でした。従って、このpartialをlayout/partials/
以下にコピーし、下記内容を追記しました。
<link rel="shortcut icon" href="/images/favicon.ico" />
これによりhttp://example.com/images/favicon.ico
がfaviconのURLとなりますが、images/favicon.ico
は静的ファイル、つまりstatic/
以下のファイルを返すので、static/images/favicon.ico
にファイルを配置することで任意のfaviconを使用することができます。
記事作成時のアーキタイプを修正する
これはthemeというわけではないですが、themeに合わせてhugo new
した際に出力されるmdファイルのデフォルト値を設定します。下記のようにしました。tocは目次を生成するかしないかです。
---
date: {{ .Date }}
toc: true
title: "{{ replace .TranslationBaseName "-" " " | title }}"
tags: []
draft: true
---
config.tomlの修正
見た目が整ったので、あとは全体的な設定を行います。
config.toml
で最低限下記の要素を修正する必要があります。
- baseURL … 実運用環境でのURL
- languageCode … 日本語コンテンツなので
ja-jp
- title … サイトのタイトル
他にGoogleAnalyticsやDisqus、今回使用するthemeであるRobustにおいてはauthor、各種シェアボタンやGoogle Adsenseに関する設定を必要に応じて行います。Robustの設定についてはRobustを参照してください。私は[outputs]
と[params.author]
を設定しました。
記事を書いてビルド
あとはhugo new post/*****
で記事を書いていきます。
下記のようにFrontMatterのdraft
はfalse
にし、必要に応じてtags
とcategories
により記事にタグをつけ、カテゴリ分けましょう。Robustではサイドバーにタグごと、カテゴリごとのインデックスが生成されます。
$ cat content/post/2017/09/helloworld.md
---
title: "Initialpost"
date: 2017-09-27T21:36:39+09:00
draft: false
toc: true
categories: ["blog"]
tags: ["foo", "bar"]
---
これは最初の記事です。
`blog`カテゴリに属し、`foo`タグと`bar`タグをつけています。
いよいよ静的ファイル群を生成します。コマンドはhugo
のみです。
$ hugo
Started building sites ...
Built site for language en:
0 of 1 draft rendered
0 future content
0 expired content
2 regular pages created
5 other pages created
0 non-page files copied
4 paginator pages created
1 tags created
0 categories created
total in 29 ms
publicディレクトリにファイルが生成されるので、これをVPSなりパブリッククラウドなりレンタルサーバなりにアップすれば公開となります。
まとめ
ここまでで概ねHugoを用いたサイト運用の準備ができたので、しばらくはこの運用で様子見をしようと思います。