I would like the ability to disable the uniqueness checking per-post from the Post settings sidebar, or alternatively as a site-wide setting. When enabled, this could would pass the skipDuplicateChecks
[1] option when calling generateSlug
[2] so that no database validation is performed.
In order to support a URL hierarchy, I’ve set up a routes.yaml
like the following:
collections:
/referral-programs/:
permalink: /referral-programs/{slug}/
controller: channel
template: channel-referral-programs
filter: tag:hash-referral-programs
/product-launch/:
permalink: /product-launch/{slug}/
controller: channel
template: channel-product-launch
filter: tag:hash-product-launch
The above works fine and I can post articles such as:
/referral-programs/ideas (slug: ideas, tag: #referral-programs)
/product-launch/checklist (slug: checklist, tag: #product-launch)
However, I can not publish different “ideas” articles to both URLs. For example, I write an article all about referral program ideas and another article all about product launch ideas. They should be published, respectively, at:
/referral-programs/ideas (slug: ideas, tag: #referral-programs)
/product-launch/ideas (slug: ideas, tag: #product-launch)
However, given that Ghost ensures the uniqueness of slugs, the following is forced (and undesirable):
/referral-programs/ideas
/product-launch/ideas-2
[1] Ghost/generate-slug.js at bec71d78401f227a82652c6c8e194e811bddaea1 · TryGhost/Ghost · GitHub
[2] Ghost/editor.js at bec71d78401f227a82652c6c8e194e811bddaea1 · TryGhost/Ghost · GitHub