Skip to content

Fix duplicate accessibility IDs in repeatable blocks#88

Open
lbbbboom wants to merge 1 commit into
Shopify:mainfrom
lbbbboom:codex/fix-accessibility-ids
Open

Fix duplicate accessibility IDs in repeatable blocks#88
lbbbboom wants to merge 1 commit into
Shopify:mainfrom
lbbbboom:codex/fix-accessibility-ids

Conversation

@lbbbboom

@lbbbboom lbbbboom commented Jul 4, 2026

Copy link
Copy Markdown

What changed

This PR fixes duplicate and missing accessibility-related IDs in repeatable theme blocks and snippets.

  • Makes contact form field IDs unique per form instance.
  • Adds a concrete email error ID for contact form aria-describedby.
  • Makes popup link dialog heading IDs unique per block instance.
  • Makes review star SVG definition IDs unique per block instance.
  • Makes blog comment form error IDs unique and ensures the email field references an existing error element.

Why

Several repeatable blocks used fixed DOM IDs or referenced IDs that may not exist. When multiple instances render on the same page, this can produce duplicate IDs or broken aria-labelledby / aria-describedby associations.

Validation

shopify theme check

Result:

327 files inspected with no offenses found.

@shopify-shipitnext

Copy link
Copy Markdown

🔎 View this PR in Shipit Next.

ℹ️ Expand to learn how to deploy and handle emergencies using Shipit Next

Overview

Shipit Next will merge your code on your behalf because this repository uses Shipit Next and its merge queue.

To ship this PR, you can either:

Comment Commands

  • /shipit: Enqueue this PR into the merge queue where it will eventually be merged and deployed.
  • /cancel: Eject this PR from the merge queue and rebuild PRs that were enqueued after this PR.
  • /shipit --jump-queue: Enqueue this PR at the top of the merge queue where it will be included in the next deploy. Use this for non-emergency situations.
    - Emergency handling procedure for this command can be found here.
  • /shipit --emergency: Merge this PR directly into main and deploy to all environments once all require_for_emergency CI checks pass. Please be aware that changes deployed with this command will not be automatically rolled back.

Commands exclusive to Deploy Before Merge

  • /cancel --emergency: Eject this PR from the merge and rollback any deployments containing this PR.

Documentation

Questions or feedback?

@lbbbboom lbbbboom marked this pull request as ready for review July 4, 2026 13:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant