brendanheywood / moodle-local_cleanurls

Lets drag Moodle's url structure into this century...
37 stars 24 forks source link

Support course categories slubs before course / activity urls #78

Open roperto opened 7 years ago

roperto commented 7 years ago

@brendanheywood

Just throwing in an idea, it may be doable now that we parse URLs as left-to-right tokens.

Considering most of Moodle is around a course, I think it would be nice if URLs were like:

http://moodle.test/category-a/subcategory-b/coursename/section-a/subsection-b/my-forum

There is a lot of possible conflicts going this way, but I think they can be worked around given proper thoughts.

I had a similar implementation when working on a ecommerce, where everything revolved about the products, it would be something like

http://store.test/components/passive/resistors/1-percent/1K3

(in this case, everything is categories and 1K3 the product and old mappings would still work after name changes)

All other pages were prefixed with an @ symbol, but that was designed so each @ section is mapped to a different controller, such as: /@auth/login ; /@user/profile ; /@cart/view which does not apply for Moodle.

Of course the system was designed from scratch like this using REST semantic URLs for everything, so there was no need for IDs. But I believe we can get to something close to that with moodle.

Anyway, that's just an idea.

brendanheywood commented 7 years ago

Yes I've thought about adding course category slugs into the urls, but if we did this it would be a config option. Some clients have categories which don't mean much to students. It also makes the urls really long if there is deeply nested categories.

roperto commented 7 years ago

Makes sense ... I am closing this one because I don't see it being implemented soon, if it becomes a requirement at some point then we can reopen later.

brendanheywood commented 7 years ago

I'm fine with new features sitting here for ages, it's better for them to be around so that other can vote / comment or provide PR's. I've also renamed it and I'll reeopn