[AXE] Blog post list and dates aren't semantic

Open
#150 0 comments 0 reactions 2 assignees View on GitHub

Maintainers usually reply within 7 days

@matej-marcisovsky is already working on this.

Since Oct 16, 2026.

Assessment

This issue has not been assessed yet.

Description

bug

Where: /blog and blog category pages.

What's wrong: posts are rendered as plain <div> rows and publish dates as <span>, so screen readers get no list structure ("list, 9 items") and dates have no machine-readable form.

Code:

  • components/blog/BlogPostsList.tsx: the list container <div className="flex flex-col gap-4">
  • components/blog/BlogPostRow.tsx: row <div> (via HeroContainerBorder asChild), date <span>

Done when:

  • the list is a <ul aria-label="Blog posts"> (label from translations) with an <li> per post, keeping the current styling
  • the date is <time dateTime="YYYY-MM-DD">October 14, 2026</time>
  • follow-up for QA: once deployed, the Playwright BlogPage page object switches from structural CSS selectors to getByRole("list", { name: "Blog posts" }) / getByRole("listitem")
Dominant language
TypeScript
Stars
6
Forks
5
Avg merge
5d 6h
Merged PRs (30d)
7

Getting set up

  • No Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from strapi/website

All issues in strapi/website

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.