Nested CMS Collections: Course Example

Hi all,
I’m currently battling with the CMS system in order to create a course website. The issue is relatively simple to explain:
The site has multiple courses, each course has multiple lessons. These are two separate CMS collections connected together using a multi-reference field. (E.g. YouTube Beginners Course → Lesson 1, Lesson 2, Lesson 3, etc.)

There is a course browser page. This is made of a simple CMS collections list that displays all the courses in a grid. (e.g. YouTube Beginner Course, TikTok Beginners Course, etc.). This is at website.com/courses

There are course pages. These are made from the Course Template page that is generated as the Courses CMS collection is created. It shows details of the course. (E.g. List of the lessons, hours to complete, price, etc.) This is at website.com/courses/course-slug

There are lesson pages. These are made from the Lesson Template page that is generated as the Lessons CMS collection is created. It shows the material of the course. (E.g. Lesson 1 Title, Lesson 1 text, Lesson 1 images, next lesson, etc.)
This is currently at website.com/lessons/lesson-slug.

Is there a way this can be nested inside the related course (as determined by the multi-reference field) so that it is instead website.com/courses/course-slug/lesson-slug ?


Here is my public share link: [LINK][1]
([how to access public share link][2])

[1]: Public Share Link
[2]: Share your site and invite collaborators - Webflow University Documentation

One suggestion I have had for this problem is to create multiple CMS collections for the lessons. (E.g. ‘YouTube Course - Lessons’ as a CMS collection)

While this would certainly work for separating out the lessons and the URLs, it is not the ideal solution. The ideal solution would be the allow other CMS fields to be used in the slug of a CMS collection, via the little purple dot. Thus setting the other CMS to be the parent and the new one as the child (just like it is done for folders and pages in the navigation)

As Tom says, the native Webflow approach is to use a separate collection for every course, so that you can individually control the path.

For most projects, that’s unmanageable - in part because it means designer work every time you want to add another course.

Unfortunately the only alternative for a Webflow-hosted site is to build a reverse proxy and handle the path rewrites, redirects, sitemap, and canonicals outside of Webflow.