From 52915911d48dcdce82ffff88789399df5a35e9c8 Mon Sep 17 00:00:00 2001 From: Vinta Chen Date: Sun, 27 Sep 2026 00:21:12 +0800 Subject: [PATCH] feat: link section use-case headings to their subcategory pages With tags now pointing at section anchors instead of filtering in place, subcategory pages (74 clicks and 19.7K impressions in the last 3 months) had no other internal links pointing to them. Co-Authored-By: Claude --- website/build.py | 3 ++- website/tests/test_build.py | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/website/build.py b/website/build.py index 70bbdc14..d447c384 100644 --- a/website/build.py +++ b/website/build.py @@ -276,7 +276,8 @@ def group_section_entries(section: ParsedSection, entries_by_key: dict[tuple[str groups: dict[str, EntryGroup] = {} for parsed in section["entries"]: name = parsed["subcategory"] - group = groups.setdefault(name, EntryGroup(name=name, slug=slugify(name) if name else "", url="", entries=[])) + slug = slugify(name) if name else "" + group = groups.setdefault(name, EntryGroup(name=name, slug=slug, url=subcategory_path(section["slug"], slug) if name else "", entries=[])) group["entries"].append(entries_by_key[(parsed["url"], parsed["name"])]) return list(groups.values()) diff --git a/website/tests/test_build.py b/website/tests/test_build.py index f2448e90..a322f1c2 100644 --- a/website/tests/test_build.py +++ b/website/tests/test_build.py @@ -990,6 +990,7 @@ class TestBuild: positions = [html.index(marker) for marker in ('

', ">w2w1', ">w3Small' in html + assert 'Small' in html assert '' in html subcategory_html = (site / "widgets" / "small" / "index.html").read_text(encoding="utf-8")