How does the module generate vanity URLs?
When a page title (jcr:title) is set, the module computes a SEO-friendly slug using the Slugify library (lowercase, accents stripped, spaces to hyphens).
The slug is combined with the parent page's vanity URL to build the full path:
- Home / Products / Cloud Solutions → /products/cloud-solutions
- Same page in French → /fr/produits/solutions-cloud
What happens when I rename or move a page?
Rename: a new vanity is created for the new title. The old vanity is kept as
an active redirect — existing links and bookmarks continue to work.
Move: the slug is preserved and only the path prefix changes. All child pages
are updated automatically. Old vanities become redirects.
What is SMART mode vs FORCE mode?
SMART (default): the module never overwrites a vanity URL that an editor set
manually in the SEO tab. On rename or move, the prefix is updated but the
editor's slug is preserved.
FORCE: the module always applies the computed URL. Manual vanities are demoted
to redirects. Use this when launching a new site or after a planned SEO migration.
How do I generate vanity URLs for pages that existed before I enabled the module?
Use the Missing Permalink Audit panel (Site Settings → Permalink Generator):
- Enter a JCR path to scan (defaults to site root)
- Click Scan — pages with missing vanities are listed per language
- Select and click Generate
Can I exclude certain content from automatic generation?
Yes, two ways:
- Site-level: enter JCR paths (one per line) in the Excluded Paths field in Site Settings → Permalink Generator
- Page-level: add the jmix:permalinkExcluded mixin to a page in Content Editor
Does the module work for non-page content?
Yes — any displayable node (a node type that has a dedicated content template)
receives a vanity URL, not just pages.