今までWordPressで運用していたこのブログサイトですが、
今回Hugoでの運用に移行したのでその経緯や作業などをまとめてみます

移行経緯

まずは移行しようと思った経緯から書いておきましょう

WordPressの惨状・問題点

移行の主要因はWordPressの運用が面倒な状況になっていたことです

これ以上騙し騙し運用を続けるのも厳しくなっていたので刷新することを考えました

刷新に当たっての検討

刷新にあたって考えたのは以下の点です

こうした考えを整理した結果、MarkdownファイルからそのままHTMLデータを生成してくれるのが理想と考えました

静的サイトジェネレータ Hugo

Markdownファイルで記事を書いて、それを良い感じにHTMLに変換してくるシステムを探して見つけたのが、Hugoです。
Hugoを使えば、記事本体だけじゃなく、カテゴリ一覧、タグ一覧、ページング処理などのブログサイトによくあるページ構成も自動で対応してくれます。
当然、サイトの構成やデザインも自分の好きなようにカスタマイズすることもできます。

サイトの構成やデザインも数多くのテーマが揃っているので、気にいるのがあれば、手間を掛けずに対応できます。
ただ……自分のイメージするテーマを見つけることができなかったので、いくつかの既存テーマを参考に自分で作成することにしました。

移行作業

細かな作業手順は割愛して、ざっくりとやったことを列挙します

正直、楽な作業では無かったけど、地道に頑張りました

移行後のサーバー負荷

移行から数日経過したので、サーバー負荷を確認してみました

移行後のサーバー負荷P

移行完了した9/9以降は、CPU稼働(上段)とDISK I/O(中断)が明確に下がっているのが分かります。
DISK I/O なんて動いているのかどうかも分からないくらいです 🎉
(念の為にアクセスログも確認しましたが、ちゃんとアクセスもありましたよ)

課題・今後の対応

一旦、公開までできたのでひと段落ですが、今後やりたい事も挙げておきます。

なぜか数式表示ができない

ちゃんと公式のドキュメント通りに対応しているのに、全然上手くいきません。
なぜかサッパリ分からない……
→ 解決しました
スルーパスレンダーのmarkup設定をテーマ側のhugo.tomlに書いていたのが原因でした。
本体側の設定に書いたら普通に動いてくれた!
どうやら、ビルドに関する設定は本体側に書かないと認識してくれないみたいです。

Google AdSenseの広告うざい

WordPressの時もそれなりに表示されていて邪魔だったと思うけど……
Hugoにして表示がシンプルになったら、広告の多さが目立つようになった気がします。
あまり入ってほしくない所にも自動挿入されているし(これはWordPressでもあった)。
この辺は設定を見直したり、表示させる場所を固定するようにカスタマイズしたり……と対応すれば改善できるので追々やろうと思います。

気の向くままにカスタマイズ

あとは、自分の気の赴くままにサイト構成とかデザインとかカスタマイズしていきたいですね

ビルドスクリプトを作る

実は、現状は手作業で ビルド → サーバー転送 → 展開 & 公開 を行っています💦
ここはワンコマンド化しないと 気軽に更新 を実現できないので対応します!!!

ログを分析

今まではWordPressのプラグインで簡単なログ・アクセス分析が見れたのですが、今後は自前でやる必要があります。
正直、ログの見方ってよく知らないのですが…勉強しながらやっていこうと思います。
あと、Google Analytics(GA4)も導入しようかな?
仕事でAndroidやiOSアプリにAnalyticsとかCrashlyticsとか入れてましたが、自サイトでも勉強がてら入れてみようと思っています。

ざっと思いついた事を書いただけですが、結構ありますね…
まぁ、1つずつゆっくりと対応していきましょ〜 ᕦ(ò_óˇ)ᕤ

まとめ

ずっとWordPressの運用にモヤモヤしていたので、これで解放されました。
無駄なサーバー処理が無くなって動作が軽くなって、記事を更新したり、サイトに手を入れるのが楽になるので嬉しい☺️
WordPressは色々できたりするので便利ですけど、機能を必要としないサイトなら静的サイトジェネレータで作る方が断然楽です。
まぁ、それもMarkdownで記述できたり、ジェネレータを自分で動かせたりできる知識・スキルを持っている事が前提かもしれませんけど……

と言うわけで、気軽に更新できる環境が作れた(ビルドスクリプトはまだだけど)と思うので、今後は頻繁に更新していけると……いいなぁ〜💭