Please add the ability to set a custom, human-readable HTML ID for any Section/Row/Element (e.g., #cds-contact-form). Right now GemPages auto-generates internal IDs/classes, which makes it hard to create reliable anchor links, custom CSS/JS, and tracking. A built-in “Custom ID” field would be a huge workflow + UX win.
Use case example: I want my contact section to have a stable ID like: #cds-contact-form So I can:
Link from buttons/menus: /pages/contact-us#cds-contact-form
Create “Scroll to contact form” CTAs reliably
Target the section with CSS/JS without depending on auto-generated selectors that are hard to maintain
Current problem:
GemPages assigns internal auto-generated selectors (e.g., .i2le03ff99d82) which are not human-readable.
These selectors can become painful when:
duplicating blocks/pages
rebuilding sections
collaborating with teammates
maintaining custom CSS/JS over time
We often end up using custom code or third-party apps just to achieve stable anchors and reliable targeting.
Requested feature:
Add an “HTML ID” field (and ideally also a “Custom selector” helper) in Advanced settings for:
Section
Row
Column
Element
Requirements / behaviour:
Custom ID field
User can set an ID like: cds-contact-form
GemPages outputs it as: id="cds-contact-form"
Provide validation + auto-sanitization (lowercase, hyphens, remove invalid characters)
Warn if duplicate ID exists on the same page
Easy usage in the editor
Show the custom ID in Layers panel (next to the element name)
One-click “Copy selector” (copies #cds-contact-form)
Optional: search/filter layers by ID
Anchor link & UX improvements
Support smooth scrolling (optional toggle)
Allow interactions “Scroll to element” to target custom IDs easily
Improves accessibility (clear skip links / deep linking)
Why this is valuable (UX + SEO + maintenance):
Better UX: deep links and clear navigation paths inside long landing pages (FAQ, specs, contact form).
Better maintainability: stable selectors for custom CSS/JS and analytics events.
Less reliance on custom apps/code for basic site structure features.
Aligns GemPages with common website-builder/editor capabilities.
Note (clarity):
CSS Class (.class) is great for styling groups.
HTML ID (#id) is essential for anchors and unique targeting. Both are useful — but the missing piece is a dedicated, stable “Custom ID” feature.
Please authenticate to join the conversation.
In Review
💡 Feature Requests
2 days ago

Dima Chernyshov
Get notified by email when there are changes.
In Review
💡 Feature Requests
2 days ago

Dima Chernyshov
Get notified by email when there are changes.