Skip to content

feat(a11y): adopt mod-blocks v2.4.0 so blocks carry heading levels - #2123

Merged
markdumay merged 1 commit into
mainfrom
feat/blocks-heading-levels-adopt
Aug 5, 2026
Merged

feat(a11y): adopt mod-blocks v2.4.0 so blocks carry heading levels#2123
markdumay merged 1 commit into
mainfrom
feat/blocks-heading-levels-adopt

Conversation

@markdumay

Copy link
Copy Markdown
Collaborator

Closes the loop on #1519 phase 2. #2116 taught the section title partial to render a heading, gethinode/mod-blocks#193 made the blocks ask for one, and #2122 moved the argument definitions into mod-utils. Until this bump none of it is visible: the example site still pinned mod-blocks v2.3.6, so nothing passed a level and every block title stayed a div.

What changes

Bumps the example site to mod-blocks v2.4.0 (and mod-utils to v6.9.0, pulled along with it).

Seven pages that rendered no heading at all — not a missing h1, nothing — now open with a real one:

page now
/en/ <h1 id="welcome-to-hinode">
/nl/ <h1 id="welkom-bij-hinode">
/fr/ <h1 id="bienvenue-sur-hinode">
/en/team/ <h1 id="meet-our-team">
/fr/team/ <h1 id="rencontrez-notre-équipe">
/en/docs/ <h1 id="docs">
/en/docs/blocks/, /en/docs/components/ <h1 id="blocks">, <h1 id="components">

Adds blocks-demo, the fixture deferred from the mod-blocks review. It is the only page in the example site carrying both content_blocks and page content, which makes it the only cover for single.html's level-2 branch — the one path the heading work had no fixture for. Its outline is exactly the documented shape:

h2  #a-block-on-a-page-with-content
h2  #what-the-blocks-look-like
h1  #blocks-demo
h2  #regular-page-content

Blocks render above the page header, so their titles are subsections and the page title below them stays the only h1. That ordering is the tradeoff recorded in single.html; this page makes it visible rather than theoretical.

It follows the existing *-demo convention (form-demo, id-demo, lightbox-demo, table-demo) and, like those, is not linked from any menu.

Verification

  • 112 pages, exactly one h1 each, no page skips a level. Previously seven had none.
  • hugo -s exampleSite builds with no errors and no new warnings.
  • test:templates exits 0; markdownlint clean on the new page.

Still open

🤖 Generated with Claude Code

Bumps the example site to mod-blocks v2.4.0, the release that forwards a
heading level to section titles. Seven pages that previously rendered no
heading at all now open with a real h1: the home page in three languages,
the team page in two, and the two documentation landing pages.

Adds blocks-demo, the fixture deferred from gethinode/mod-blocks#193. It is
the only page carrying both content_blocks and page content, so it is the
only cover for single.html's level-2 branch, where blocks render above the
page header and their titles become subsections.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@netlify

netlify Bot commented Aug 5, 2026

Copy link
Copy Markdown

Deploy Preview for gethinode-demo ready!

Name Link
🔨 Latest commit f5f32aa
🔍 Latest deploy log https://app.netlify.com/projects/gethinode-demo/deploys/6a733f5797804d0008c9a46f
😎 Deploy Preview https://deploy-preview-2123--gethinode-demo.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@markdumay
markdumay enabled auto-merge August 5, 2026 13:53
@markdumay
markdumay merged commit 2a45bcf into main Aug 5, 2026
17 checks passed
@markdumay

Copy link
Copy Markdown
Collaborator Author

🎉 This PR is included in version 3.20.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@markdumay
markdumay deleted the feat/blocks-heading-levels-adopt branch August 5, 2026 13:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant