I’ve been struggling to find an answer in the wiki and the forums to make sure I’m not just repeating something.
Turns out I am, but there wasn’t a satisfactory answer and the thread is two years old, so I thought I’d ask again.
The situation is that I’ve got a website for an ISP where the phone technicians and sales department often refer people to URLs over the phone. This makes deeply nested or very long URLs very difficult to deal with, especially for frequently used resources. However, for the purpose of keeping things organized and not having absolutely everything as a flat structure (which would result in long filenames or aliases), there is still a need for some hierarchy.
Example structure:
Products
--
Hosting
----Web
----Email
--
Connections
----DSL
----Fiber
Support
--
Hosting
----Web
----Email
--
Connections
----DSL
----Fiber
Now, there’s certainly pages under these, and we’re trying to keep it no deeper than that, but there will be the occasional exception. The main problem with "Use friendly alias path" is that you can get some fairly ruthless URLs to repeat over the phone to customers, like:
site.com/hosting/web/ultimate/features
"The page is ’site dot com slash.. no, no
forward slash - the one under the question mark, good... products slash hosting slash web slash ultimate slash features..."
Ideally, we would be able to refer to something like:
site.com/hosting/ultimate while still maintaining a hierarchal structure. This would mean that we also have a proper breadcrumb trail established so people can still know where within the site they are. e.g.
site.com/hosting/ultimate would jump you into a page with a breadcrumb that looked like
Home > Products > Hosting > Web > Ultimate
Normally, I’d accomplish this with a bunch of rewrites, but there’s a number of contributors likely in the future, and ease of use if the primary goal. As you can see, we’ve made paired Product and Support pages so navigation is more consistent, so there’s already a need to use "Allow duplicate aliases" within MODx. This requires "Use friendly alias path", which writes out the entire nested path.
I’ve tried several experiments with different combinations of friendly urls and weblinks in different variations, and none are satisfactory. The only solution I see right now is a bunch of Rewrites to the most commonly linked sections.
Is there a "Pointer" type function that will be easy enough for other contributors to add these Rewrites to the .htaccess? Any other ideas?