- Issue created by @hastroop
- 🇺🇸United States flashwebcenter Austin TX
Thank you for bringing this to my attention.
This is not a bug, but rather the expected behavior in Drupal core, particularly for system blocks. However, as you've rightly pointed out, this design has SEO and semantic implications, especially in cases where block titles remain in the HTML DOM but are visually hidden using
display: none
.While this is not an accessibility violation (screen readers can still access hidden content), it can disrupt the semantic heading structure, which affects SEO and content hierarchy.
Solution Overview
To address both SEO best practices and accessibility requirements, I implemented a robust solution through the Solo Utilities module. This module is specifically designed to handle advanced or edge cases that themes alone cannot manage.
How to Use the Feature
-
Install the required modules and theme:
- Download and enable the Solo Utilities module → .
- Install the latest dev version of the Solo theme → .
-
Enable the feature:
-
Navigate to:
admin/appearance/settings/solo
(or your current active theme). - Expand the Global Site Settings section.
- Enable the "Custom block title visibility" checkbox and save the configuration.
-
Navigate to:
-
Configure each block:
-
Go to:
admin/structure/block
. - Edit any block.
-
Under Block Title Settings, you'll now see:
- The "Display title" checkbox has been removed.
-
A new dropdown with the following options:
- Visible – Renders and displays the title (default behavior).
- Visually hidden – Renders the title for screen readers only (recommended for accessibility).
- None – Does not render the title at all (clean markup, used when the block has no semantic purpose).
-
Go to:
-
Heading tag options:
-
If "Visible" or "Visually hidden" is selected, an additional dropdown lets you choose the HTML tag to use for the title:
-
h1
–h6
for semantic control -
div
for non-semantic output (e.g., when the screen reader title should appear before the mainh1
)
-
-
If "Visible" or "Visually hidden" is selected, an additional dropdown lets you choose the HTML tag to use for the title:
This feature helps maintain logical heading structure, optimize SEO, and support accessible screen reader behavior—all in one flexible system.
Best wishes,
Alaa -
Install the required modules and theme:
Automatically closed - issue fixed for 2 weeks with no activity.