Featured image of post ブログ移行プロジェクト進捗 #2 ─ タグ復活、サブドメイン展開、OGP最適化

ブログ移行プロジェクト進捗 #2 ─ タグ復活、サブドメイン展開、OGP最適化

前回の進捗から2日。この間に行った作業をまとめておく。

タグ・カテゴリページの復活

前回「Workers Paid ($5/月) でファイル上限を100,000に拡大する」と書いたが、これは誤りだった。Cloudflare のコミュニティフォーラムで確認したところ、Pages のファイル上限を引き上げるには Pages Pro/Business/Enterprise($20/月〜)が必要で、Workers Paid ではダメだった。

そこで方針を変え、20,000ファイルの制限内でタグ・カテゴリページを復活させる方向に切り替えた。

やったこと

  1. 使用頻度5回以下のタグを削除: 1,546 → 370タグに圧縮
  2. 2010年以前の記事を月別アーカイブに統合: 9,841記事を draft: true にし、月ごとの統合記事148本に変換
  3. taxonomy を再有効化: disableKinds 設定を削除し、タグページのリンクを復活

結果、ビルド出力は 9,040ファイル。20,000の半分以下に収まった。

タグ別サブドメインの展開

特定タグの記事だけを独立したCloudflare Pagesプロジェクトとしてデプロイする仕組みを構築した。本体の20,000ファイル制限に影響せず、それぞれFree枠で独立して運用できる。

サブドメインタグ記事数
fh.hide10.comForza Horizon50
ai.hide10.comAI127
xbox.hide10.comxbox469
babymetal.hide10.comBABYMETAL89
cats.hide10.com猫・ネコ・サスケ・チャコ469
movie.hide10.com映画119
machida.hide10.com町田195

ビルドには自作のシェルスクリプト build-subdomain.sh を使っている。タグ名とbaseURLを引数に渡すだけで、該当記事の抽出からHugoビルド、Cloudflare Pagesデプロイまで一発で完了する。複数タグのOR検索にも対応しており、猫サブドメインのように "猫|ネコ|サスケ|チャコ" でまとめて指定できる。

各サブドメインには独立したRSSフィードも自動で生成される。

Google Analytics (GA4) 導入

Hugoの組み込みテンプレートを使い、GA4の計測タグを導入した。hugo.tomlgoogleAnalytics = "G-T1FR5FQGV2" を追記するだけで完了。ただしHugoのデフォルトでは respectDoNotTrack = true になっており、DNT設定のあるブラウザではトラッキングされない点に注意が必要だ。

X/Twitterポストの埋め込み

Markdown本文中にX(旧Twitter)のURLを裸で書くと、自動的に埋め込みツイートとして展開されるようにした。Hugoの render-link.html フックで実現している。Markdown記法のリンク [テキスト](URL) は通常のリンクのまま、URLだけが単独で書かれた場合のみ埋め込みになる。

widgets.js は記事ページかつ埋め込みが存在する場合のみ読み込む。

OGPアイキャッチの最適化

OGPカードで画像が小さく表示される問題に対応した。

  • SVGアイキャッチ: GitHub Actionsのビルド時に rsvg-convert で1200px幅のPNGに変換(既存)
  • 写真アイキャッチ: ビルド時にPillow(Python)で1200x630にクロップ・リサイズするステップを追加(今回新規)

OGPの推奨サイズは1200x630(1.91:1)。縦長の写真をそのまま使うとX等のカードで小さく表示されてしまうため、中央クロップで横長に変換している。

GitHub Actions自動デプロイ

main ブランチへのpush時に自動でビルド・デプロイが実行される。手動デプロイは不要になった。

ワークフローの流れ:

  1. SVGアイキャッチ → PNG変換
  2. 写真アイキャッチ → 1200x630クロップ
  3. Hugo ビルド(hugo --minify
  4. Cloudflare Pagesデプロイ
  5. Telegram通知(成功/失敗)

次にやること

  • DNS切り替え: www.hide10.com を新サイトに向ける
  • 旧URLリダイレクト: WordPressの /archives/{id}/post/{slug}/ にリダイレクト
  • サブドメインの自動デプロイ: 現在は手動。GitHub Actionsに組み込みたい

参考

Next Action

おすすめリンク

この記事に合わせて、関連アイテムを探しやすいリンクをまとめています。

Affiliate Links

AI学習まわりを探す

AIを理解したい読者向けに、本で深掘りしやすい導線を優先します。

AIエージェント設計の本を探す Claude、LLM、エージェント設計を深掘りしたい時向け
生成AIの本を探す 入門書、活用本、プロンプト本向け
AI開発・Python本を探す API連携や実装まで踏み込みたい時向け

外部ストアへのアフィリエイトリンクです。気になるものだけ開けば十分です。

B!