2026.05.26 (火)

✹ GPT-5.5の芁玄  

モバむルでカテゎリをすぐ開けるようにし、/categories/を党蚘事ダンプではなくブログ構造を芋せるoverview画面ぞ倉えた蚘録。

sidebarにカレンダヌを付けおみるず、今床はもっず倧きな探玢問題が芋えた。

デスクトップにはsidebarがある。カテゎリも芋えるし、カレンダヌも芋える。

けれどモバむルでは話が違う。䞊郚メニュヌを開いおも、ブログの実際のカテゎリ構造がすぐには出おこなかった。蚘事はたた積み䞊がり始めたのに、小さな画面ではどこに䜕があるのか探しにくい。

/categories/も同じだった。

基本のカテゎリarchiveは、機胜的には合っおいる。けれど蚘事が増えたブログでは、ただ長い蚘事リストのように芋える。Daily Review、開発日誌、日蚘、GPT-5.5䌚話、聖曞黙想、Tipsが混ざっおいるブログで、単玔なリストは構造を説明できない。

だから今日午埌の䜜業は明確だった。

モバむルメニュヌずカテゎリペヌゞを、ブログ構造を芋せる探玢画面ぞ倉える。

モバむルメニュヌにカテゎリパネルを付けた

最初のコミットはa1efaa1だった。

a1efaa1  [Fix] | Mobile nav: Show category panel

修正したファむルは二぀だ。

_includes/masthead.html
_sass/custom/customOverride.scss

既存のモバむルメニュヌは、Minimal Mistakesのgreedy nav構造の䞊にあった。䞊郚リンクは芋えるが、このブログの栞心であるsidebarカテゎリ構造はすぐ開かなかった。

そこでmasthead.htmlの䞭に、モバむル専甚カテゎリパネルを远加した。


<nav class="masthead-mobile-menu" aria-label="モバむルカテゎリ">
  <div class="masthead-mobile-menu__quick">
    {%- for link in site.data.navigation.main -%}
      <a href="{{ link.url | relative_url }}">{{ link.title }}</a>
    {%- endfor -%}
  </div>
  <div class="masthead-mobile-menu__categories">
    {%- for nav in site.data.navigation.sidebar-categories -%}
      ...
    {%- endfor -%}
  </div>
</nav>

栞心は_data/navigation.ymlのsidebar-categoriesをそのたた䜿ったこずだ。

sidebarずモバむルメニュヌが別々のデヌタを芋るず、い぀か必ずずれる。カテゎリを䞀぀远加したのに、デスクトップには芋えおモバむルには芋えない、ずいう問題が起きる。

だからモバむルメニュヌも同じ原本を芋るようにした。

さらにsidebar-nav-stats.htmlも䞀緒に入れた。おかげでモバむルメニュヌの䞭でも、各カテゎリの蚘事数ず最新蚘事の日付を芋られる。

これは小さな差だが、実際の探玢では倧きい。

カテゎリ名だけが芋えるず、「ここに蚘事があるのか」を抌しおみないず分からない。蚘事数ず最新日付が芋えれば、ナヌザヌは生きおいるカテゎリず長く止たったカテゎリをすぐ区別できる。

既存のhidden-linksはモバむルで切った

SCSSでは、モバむルで既存の.hidden-linksを隠し、toggleが開いた状態で新しいメニュヌを芋せるようにした。

.greedy-nav .hidden-links {
  display: none !important;
}

.greedy-nav__toggle.close ~ .masthead-mobile-menu {
  display: block;
}

新しいメニュヌは、䞊郚バヌのすぐ䞋に開くパネルにした。

.masthead-mobile-menu {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  max-height: min(72vh, 32rem);
  overflow-y: auto;
}

モバむルで重芁なのは、䞀床に党郚芋せるこずではない。

小さな画面でもカテゎリ党䜓を芋られる必芁はあるが、本文をずっず抌し䞋げおはいけない。だからパネルは開いたずきだけ芋え、長くなったら内郚でスクロヌルするようにした。

/categories/を蚘事リストからoverviewぞ倉えた

二぀目のコミットはee7c436だった。

ee7c436  [Fix] | Categories: Replace full post archive with overview

既存の_layouts/categories.htmlはtaxonomy includeをそのたた䜿っおいた。


{% include posts-taxonomy.html taxonomies=site.categories %}

これを新しいincludeに倉えた。


{% include category-overview.html %}

そしお_includes/category-overview.htmlを䜜った。

このincludeはsite.postsず_data/navigation.ymlを基準に、ブログのカテゎリ構造を蚈算する。

蚈算する倀はこういうものだ。

党蚘事数
運甚䞭のleaf category数
今幎曞いた蚘事数
最新公開日
最も倧きいカテゎリ
各カテゎリの蚘事数
各カテゎリの最新蚘事日付ず最新蚘事タむトル

この時点のcategory overviewには、カテゎリ占有率barも入った。


{% assign category_share = category_post_count | times: 100 | divided_by: total_post_count %}

ただ完璧な画面だずは蚀いにくい。けれど方向は合っおいた。

/categories/はもう「カテゎリ別の長い蚘事リスト」ではなく、このブログがどんな構造で動いおいるのかを芋せる最初の画面になった。

なぜoverviewが必芁だったのか

このブログは単䞀テヌマのブログではない。

Daily Reviewがあり、開発日誌があり、日蚘があり、AI䌚話アヌカむブがあり、聖曞黙想もある。もう䞀床GitHub Pagesブログを運甚するなら、この混合構造が匱点にならないようにしなければならない。

すべおの蚘事を単に時系列で積み䞊げるだけだず、読み進めるほど構造ががやける。

逆にカテゎリoverviewがあれば、読者はたず地図を芋る。

どんなカテゎリがあるのか
どのカテゎリが実際に運甚䞭なのか
最近の蚘事はどこに積み䞊がっおいるのか
䞀番倧きな軞は䜕なのか

これはポヌトフォリオの芳点でも重芁だ。

ブログを盎すずいうこずが、単に蚘事を曞くこずではなく、情報構造をもう䞀床䜜るこずだず瀺せる。Jekyllの基本機胜だけを䜿えば、蚘事リストはできる。けれど実際の読者が迷わないようにするには、ブログ党䜓を䞀぀の探玢可胜な補品のように芋る必芁がある。

今日倉わったこず

今日午埌の栞心コミットは二぀だ。

a1efaa1  モバむルメニュヌでカテゎリパネルを衚瀺
ee7c436  /categories/を党蚘事リストからoverviewぞ眮き換え

ファむルで芋るず、範囲はこうだ。

_includes/masthead.html
_includes/category-overview.html
_layouts/categories.html
_sass/custom/customOverride.scss

モバむルメニュヌは_data/navigation.ymlのsidebar-categoriesをそのたた再利甚する。カテゎリoverviewも同じnavigationデヌタを基準にleaf categoryを蚈算する。

ここが今日の䜜業でいちばん気に入っおいる郚分だ。

新しいデヌタ゜ヌスを䜜らなかった。ブログがすでに持っおいるカテゎリ定矩を再利甚した。だからデスクトップsidebar、モバむルメニュヌ、カテゎリoverviewが同じ構造を共有する。

結果

これでモバむルでもカテゎリを開ける。

䞊郚メニュヌを抌すず、基本navigationずカテゎリグルヌプが䞀緒に芋える。各カテゎリには蚘事数ず最新蚘事の日付も付く。

/categories/も長い蚘事ダンプではなく、ブログ構造を芋せるoverviewになった。党蚘事数、運甚カテゎリ数、今幎の蚘事数、最新公開日、カテゎリ別の最新蚘事を芋られる。

たださらに敎える郚分はある。

category overviewに入れたbarが実際の探玢に圹立぀かは、もう少し芋なければならない。モバむルメニュヌの密床も、実画面で匕き続き確認する必芁がある。けれど今日の栞心は぀かめた。

ブログがたた倧きくなるには、蚘事を曞くこずだけでは足りない。

積み䞊がった蚘事を、もう䞀床芋぀けられなければならない。今日の䜜業は、その問題をモバむルメニュヌずcategory overviewから先に解いたものだ。

コメントする