logo hsb.horse

Architecture Decision Record

ブログ記事と知識記事を分離するGlossary導入方針

時系列記事は blog、長期参照の知識記事は glossary に分離し、URL・コレクション・一覧導線を独立運用する。

採用 #content #glossary #blog #information-architecture #seo

ブログ記事と知識記事を分離するGlossary導入方針

Decision

  • 時系列で読む記事(課題、検証、解決)は blog に配置する。
  • 定義・仕様メモ・比較表など長期参照向けコンテンツは glossary に配置する。
  • 新規コレクション glossary を追加し、/glossary/{lang}/glossary に一覧と詳細ページを実装する。
  • 既存の blog 記事は即時移動せず、新規作成分から分類を適用する。

Context

現状は知識メモとブログ記事が同じ blog に混在している。
この状態では、読者にとっての探索導線と運用者にとっての更新ルールが曖昧になりやすい。

  • ブログ記事: 公開日や文脈の流れが重要
  • 知識記事: 更新継続と再利用性が重要

同一コレクション運用のままだと、一覧UI・内部リンク・SEO意図(検索意図)が混在し、情報設計の一貫性が下がる。

Options

  • Option A: すべて blog に統一し、タグだけで区別する。
  • Option B: blogglossary を分離する(採用)。
  • Option C: まず命名規則だけ分け、実装分離は後回しにする。

Rationale

  • blog は時系列、glossary は参照型という読み方が明確になり、ユーザーの期待値と一致する。
  • コレクションを分離すると、将来のUI最適化(並び順、フィルタ、強調項目)を用途別に調整しやすい。
  • URLを分離することで、検索エンジンにもページ意図を伝えやすい。

Consequences

  • src/content.config.tsglossary コレクション定義を追加する。
  • content/glossary/ を新設し、lang + slug ベースでID生成する。
  • src/pages/glossary/*src/pages/[lang]/glossary* を追加して静的ルーティングを構成する。
  • i18n辞書に glossary 用コピーを追加する。
  • 既存記事の移行は段階的に行い、必要に応じて将来リダイレクト方針を別ADRで定義する。