当ブログは、昨年末にWordpressから静的サイトジェネレータを使う形式に変更した。PHPerなので、sculpin
を採用していたが、運用していると色々辛いことがあってhexo
に乗り換えることにした。
何故乗り換えたのか
生のHTMLとCSSを書くのがしんどかった・・・。せっかくjadeとstylusでマークアップしても、sculpinのテンプレートに最終的に合わせる必要があったので、ちょっとマークアップ修正したりすると二度手間になってしまうのです。
辛さを軽減するために、同じレポジトリ内にnpmのプロジェクトディレクトリを置いて、jadeとstylusでマークアップ修正して、cssはsculpin側のcssディレクトリに自動で反映するようにしてたけど、HTMLだけは最後にtwig形式にしなきゃならなくて、結構面倒だった。
こんなに面倒だったら、静的サイトジェネレータ自体もnodeモジュール使う方が自然な流れです。
hexoへの乗り換え方
hexoは、デフォルトでは hamlとstylusなので、ソレ以外のテンプレートエンジンやCSSエンジンを使う場合は、pluginを入れる必要があります。私がデフォ以外で追加導入したpluginは下記の通り。
- jade
- rss
- sitemap
もともと、jadeとstylusでマークアップしてたので、動的要素をマークアップに追加してあげるだけで、すんなりと移行できました。browser-syncのpluginは不具合があるようで、ある程度の文章の長さを超えると、その先が文字化けてしまってました。
なので、オートリロードで編集したい人は、変更監視をしてくれるhexo generate --watch
コマンドと、生のbrowser-syncを組み合わせると幸せになれます。
おまけ
hexoでブログ記事を書くときは、以下の流れです。
- まず、変更監視付きで、hexoのgenerateコマンドを実行
1
hexo generate -o --draft --watch
- コマンドラインで、ドラフト記事のマークダウンのファイルを追加
1
hexo new draft {ファイル名}
- ブログを書き終わったら、publishコマンドを打つと、configで指定した形式でファイルを公開
1
hexo publish {ファイル名}
楽ちんだーーー。