静的サイトジェネレーター Hugoについてのメモ
ネットで書かれていることでも、出来ないことが結構多くて、独自で実装したのもあります。
ローカルサーバー起動
他のサイトでは"-D"を付けているのを見かけるが、
ドラフト設定しているのも表示するという意味。自分は付けない。
$ hugo server
公開用ページ作成
$ hugo
各フォルダの役割・目的
各フォルダがどの役割となっているのか。
なかけんのHugoノート Hugoフォルダの構成
上記ページが参考になったが、念の為(リンク切れとかのため)自分用の簡易メモとして
- archetypesフォルダ : 記事のテンプレートがあるフォルダ
- contentフォルダ : 記事があるフォルダ
- publicフォルダ : 公開用ページがあるフォルダ
- resourcesフォルダ : ユーザは利用しないフォルダ
- themesフォルダ : サイトテーマを格納するフォルダ
他にもdataフォルダなどの記載があるが、自分の環境では見当たらない。
バージョン違いによるものか、自分の設定が不足しているのか、テーマのせいなのか。
記事の管理方法
記事をどのように管理するか、結構悩んだ。
Hugoのデメリットの一つだと思う。
一番良いのは、タイトルをファイル名にする
と思うのだけど、
書き始める時に決まっているとも限らないし、後から変えたくなった時面倒だし。
フォルダの分け方もどうしようか とか。
それで、
ニャゴスハンテン Hugoの記事管理方法を考えてみた
この方の管理方法とシェルをそのまま流用させてもらっている。
こんな方法思いつくとか偉大!
記事作成の時hugoコマンドではなく、このシェルを叩くようにする。
ただ、
これだと、ファイル名からは内容が推測つかないので、修正時に不便となる。
なので、
修正したいときはWebのページ見て、タイトルから辿るようにしている。
でも
やっぱり不便な時ある。フォルダ名とかファイル名をタイトルにするシェルとか作るかな。
|-2019
|-07
|-[ios]記事タイトル
|-index.md
|-xxxx.png
とかにしたい
記事作成時のデフォルトの記載の修正
記事作成時のmdファイルに、デフォルトでその記事の設定が記載されるが、
その記載内容を修正したい場合
archetypes/default.md
の内容を修正する。
Ï
検索機能の追加が難しい
Hugoに検索機能を追加したい場合
- Google製検索APIを設置
- JavaScriptで検索システムを追加(grunt-hugo-lunrjs.md)[https://gist.github.com/sebz/efddfc8fdcb6b480f567]
の二つがあるらしいんだけど。
Googleのは検索結果に広告が載ってうざい。
なので、JavaScript製のにしたいのだけど、敷居が少し高く。勉強中。
使い勝手はどうか
wordpressからの移行で、Hugoを使ってみたが
管理画面が無いので、運用や管理がしづらくなった。
ただ、その管理画面があるせいで、運用や管理に手間がかかるのも事実
その手間がなくなるので、個人的には移行してよかったと思う。