First, I just want to say that this latest Wayfinder is working wonderfully for me. Great job Kyle; I really like some of the new parameters, as they made child’s play of some fairly complex menus I was converting from Mambo yesterday...great timing!
Quote from: Mark at Feb 20, 2007, 07:17 PM
Here is the dream I have for Reflect (Ditto’s archiving component) that Wayfinder would benefit from as well. The user creates a single template chunk that has nested templates in it and then the snippet takes that, breaks it apart into the segments it needs, and stores them in a cache file. That way a user could see his/her menu template easily and even make changes to the tag structure in an WYSIWYG editor...
The hard part is making it work...
I’m concerned that this vision is somewhat contrary to the philosophy and goals of the content management core. What I mean is that it is not the responsibility (and should never be) of a snippet to break apart nested templates in some arbitrary format, cache content, etc. That’s not to say it shouldn’t be allowed when developing your own solutions, but I do not believe that core snippets such as Ditto, Reflect, and Wayfinder should exemplify these potentially one-off approaches. As we start to internationalize MODx, add content revisioning, etc., this is going to be even more important, as you would have to rewrite the code and write custom migration scripts for all of the proprietary templating, caching, and administration taking place in these components to take advantage of some of these fixes and features being developed.
I know me saying this is going to frustrate some of you, as usual, but it is important to me that we start to address these issues at the core level rather than inside each snippet implementation. And the sooner we start reinforcing these consistent approaches in the core add-ons, the sooner other would-be add-on developers can follow by these examples. But I’m convinced that the more content management logic we place inside these add-ons as a workaround to a core issue or missing feature, the harder it is going to be to resolve those issues in a consistent way moving forward.
In other words, let’s start focusing on how we can get the features we need to support the requirements that are inspiring Mark’s vision into the core. This will require a level of collaboration between core developers and add-on developers that has yet to exist in this project, but IMHO, this is way overdue already.