We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 20707
    • 42 Posts
    Hello All,

    I recently joined the ModX community and have read over all of the posts pertaining to finding the perfect CMS and is ModX the right CMS for that
    particular person, etc. Well, I share many of the same frustrations.

    Basically, I have spent the last six months in search of the perfect CMS for me. Any CMS that claims to be a "one size fits all" CMS isn’t going to work for me.

    I have tried just about all of the top CMS platforms from Open Source to commercial - .NET to PHP. I finally came to the realization that there comes a time when an individual has to compromise and go with the closest CMS that best fits their own goals and objectives.

    I am an ex .NET developer and SEO marketing professional. While in search of the right CMS, I have had to take the time to learn PHP/Apache/MySQL and a different proprietary middle layer for each CMS. To be completely honest, I no longer enjoy development nor do I have a passion for it. I consider myself an entrepeneur and use development as a "necessary" tool in order to make a living. That’s the bottom line. I understand that if I want power and flexibility, I have no choice but to get my hands dirty.

    With that said, here is a small list of what I am looking for in a CMS. The following list of features isn’t something I am willing to compromise on:

    1. Large Community Base/Good Documentation - This is a good indication that the CMS will be around for a long time and help is readily available. I do not want to waste my time learning a CMS if it’s not going to be around in the future.

    2. XHTML 1.0 Strict and CSS 2.1 Compliant Core - I do not want any raw output to contain any deprecated elements, tables, etc. The reason I mention the word "core" is because I don’t expect all third party modules/components/add-ons to pass a specific specification. However, for the future, I think more attention needs to be focused on making sure that all third party extensions fit a specific set of criteria. This applies to every CMS platform.

    3. SEO Friendly Architecture - This ties in closely with point #2 above. I need a CMS that does not contain any bloat code. What I mean by this is, if I’m not using a module, there is no need to include the associates code/files for it. I also do not want any inline javascript or CSS included in the source output. I like to have my content as close to the top of the source as possible and do not need any inline content preventing me from doing this. Source content ordering is very important to me.

    4. Low Overhead with Good Caching - Any CMS that claims to be all things to all people comes with a huge price in overhead. I can’t have a CMS that is going to utilize unnecessary server resources whether it be unnecessary queries or extension initialization. File compression and page caching are also very important.

    5. Template & Extension Output Overriding - If need be, I want to have the ability to override the output of the core and any additional third party components, without breaking the functionality or hacking the core code.

    6. Practical Business Model Architecture - One purpose of a CMS is to eliminate a lot of the tedious coding and having to understand the inner workings of the core. Afterall, That’s the purpose of object oriented design. Seamless integration and abstraction. If a CMS has a middle layer that is just as complex to learn as it’s core, then we have problems.


    Modx Shortcomings?
    ===========================================================================
    I have installed and tried out ModX for about three days. I know that’s not a long time to give it an honest chance but I can’t take anymore time and dig into a CMS only to find out that it won’t work for me. So, here are some of the things that I did not like about ModX based on my first impression. Please correct me if I am wrong.

    [b]Requirement -
    2. XHTML 1.0 Strict and CSS 2.1 Compliant Core[/b]

    The demo site I am running for Modx and many of the pages on the modxcms.com site do not validate based on the this specification. The doctype declaration for the modxcms.com site is 1.0 Strict. This concerns me.

    Is there a way around this or am I missing something?


    Requirement - 3. SEO Friendly Architecture

    I noticed that Modx uses several inline javascript blocks. Especially when Ajax controls and web forms are present. This includes the main modxcms.com site as well when I view the source.

    Is there a way to have Modx put the code in external JS files automatically or even manually?


    Requirement - 6. Practical Business Model Architecture

    I have read the Modx documentation and still don’t have a full understanding between all of the Modx types and when to use which and where. For instance, there are template variables, chunks, resource place holders, snippets, modules, ad-ons, etc..... Honestly, it’s quite confusing and I can understand why a person would be intimidated (even an experienced developer) at first glance.

    Is there any place I can get a clear definition on when to use these types and where?


    One last question. Is there a way I can create my own form fields or forms and associate them to different categories? I am basically creating a classifieds site and need the ability to do this.

    What it comes down to for me is, ModX is the last CMS I am going to take the time to learn because my ongoing search has become counter productive. I would have been better off just developing the site from scratch using .NET

    I do appreciate any feedback.
      • 5689
      • 289 Posts
      Regarding XHTML validity, it’s completely up to you as the designer. The MODx sample content may not validate, but you really would want to start fresh anyway and not use the sample pages. The templates would then be 100% custom, and if you write the valid XHTML, it’ll be valid. Does that make sense? The only thing that could be an exception is if TinyMCE, the rich text editor for the manager, doesn’t generate valid XHTML, but I believe it does. Can somebody verify that?

      The SEO issue you mentioned is kind of the same thing. You would write the JS yourself and do it however you prefer.

      I’ll let the more experienced MODx users cover the rest. smiley
        I'm learning more about MODx all the time and loving it.
        • 1343 ☆ A M B ☆
        • 2,213 Posts
        You have full control over the output of everything with MODx including the code output. It’s very easy to have valid xHTML, heck all of my sites validate as Transitional or Strict.

        You can have all CSS/JS externalized, granted some snippets contain/add JS to the document, but with a little tweaking you can resolve those problems as well.

        MODx is very SEO friendly and with items such as (http://modxcms.com/extras/package/272) it’s hard not to get and/or automate most of the output for SEO.

        As for a quick language breakdown:

        Templates - HTML with placeholders for content
        Chunks - HTML code that’s frequently reused
        Snippets - PHP code typically used to run stuff. (Wayfinder, eform come to mind)
        Plugins - PHP code that’s run automatically for items such as TinyMCE
        Modules - PHP code to do stuff in the manager such as Database editors

        If you want a good resource to look over and get a better feel for how things work check out: http://codingpad.maryspad.com/2009/03/28/building-a-website-with-modx-for-newbies-part-1-introduction/
          Patrick | Server Wrangler
          About Me: Website | Tweets |  MODX Hosting
          • 20707
          • 42 Posts
          Thanks for taking the time to read and respond to such a detailed post. I really appreciate it. That tells me a lot right there.

          I am going to look over the resources you’ve suggested and dig in a little deeper. I also found a great tutorial explaining the ModX language. It really helped out a lot. I would suggest any ModX newcomer to check out the following explanation of all the different Modx tags http://www.sottwell.com/how-modx-works.html

          I don’t mind digging in and tweaking certain things, as long as it’s not going to be an ongoing thing or take up more time than it’s worth.

          I will say this much. I’ve read through many forums for several different CMS platforms and I don’t recall seeing many people dropping ModX for another CMS. I saw a few people that mentioned how difficult it was to learn but that pertained to people who had no programming experience. I have no problems taking the time to learn something if it satisfies my long term requirements.

          Does anyone know if it’s possible to create different formfield types, custom field sorting for content and assign them to different categories? eg. I am building a classifieds site and the ad submission forms for cars has a different set of criteria than the furniture category, etc.

          Thanks again for your time!


            • 25663 MODX Staff
            • 12,272 Posts
            You can build whatever you’d like in MODx. For Evo, many people use an Add-on called eForm. For Revo, there’s FormIt. With MODx you should find it to be very flexible and you should be able to have 100% control, and the ability to override pretty much any behavior you want through plugins and without hacking the core, thus preserving your upgrade path. For SEO purposes, I don’t think you’ll find a better platform (just make sure to use TVs for any meta descriptions or other meta content, and not the built in stuff that’s turned off by default now).
              Ryan Thrash, MODX Co-Founder
              Follow me on Twitter at @rthrash or catch my occasional unofficial thoughts at thrash.me
              • 7291
              • 129 Posts
              #2 and 3 - All depends on your own code. If you write compliant code you’re golden. SEO is easy to implement the basic internal structure in MOdx.

              6 - Figuring out how it all ties in together is tricky at first but relatively easy compared to Drupal or other CMS.

              I chose Modx because it allows total freedom to create whatever is needed. Not stuck by any template design requirements, ajax pages results in faster second page load times. Overall Modx is a great choice! Wouldn’t go back to any other system...
                [center]-- smiley --[/center]
                [center]New View Media - Custom Website Design[/center]
                [center]Custom Website Design & Marketing = Strategic Business![/center]
                • 20707
                • 42 Posts
                After reading through the resources and tutorials everyone suggested, I finally decided to go with ModX. Here are just a few of the reasons why:


                If I could sum it up with one equation, Modx to me is: CMF + CCK(Content Construction Kit) = A very powerful/fast/flexible/SEO Friendly/extensible WADP (Web Application Development Platform) I love the fact that CCK functionality is part of/built on the Modx core framework. I could have added "cross" platform in there as well.

                In order to try and achieve the same type of flexibility with other platforms, I had to learn many third party CCKs and they all had one or more of the
                following problems:

                1. Don’t conform to framework coding standards
                2. Lack support/documentation/small user base.
                3. Resource hogs - Extraneous HTML Output, difficult to override, terrible relational DB design structure including inefficient SQl statements and unnecessary requests, etc.
                4. Lack frequent bug fixing and updating/versioning. Any slight upgrade to the CMS core framework and these CCKs are useless.


                Another really awesome Modx feature is the fact that I see members of the core team actively participating in the forums. Not only that but fast response times. That is extremely hard to find.

                Suggestions (For what it’s worth)
                ==================================

                1. Visual Framework Model
                - I do think it would be a good idea to put together some sort of visual model of how the different Modx layers interact and
                include the scope of the different tags along with their reference counter parts, whether they’re input in the back end, config files, etc. This would
                definitely eliminate a lot of the questions that new users may have when comparing platforms.

                2. Platform Conversion Guide
                - Create a Modx conversion guide which would include a list of terminology for people coming from other platforms and provide the Modx equivalent. eg.

                Drupal Joomla Modx
                ================================================================================
                Regions (example syntax) Module Positions (example syntax) Chunks (example syntax)

                etc.......


                3. Updated/New Snippets
                - The main thing, IMHO, that Modx lacks is a larger, updated third party snippets library. Many existing snippets are outdated
                and I don’t see many new snippets being added. This is somewhat surprising to me with such a large user base. Also - Most snippets built for Evolution do/will not work with Revolution, is this correct?


                Thanks again!
                  • 1343 ☆ A M B ☆
                  • 2,213 Posts
                  The majority of the resources written for 0.9.5.x and newer work with Evolution. Heck some of the older ones also work depending on they do and if their function has been removed in newer releases.

                  There is a difference between Evolution and Revolution so most items need to be rewritten for Revolution. It was rewritten from the ground up and as such there is plenty of new stuff. You can install the Revo add-ons in the manager tho which is rather nice.
                    Patrick | Server Wrangler
                    About Me: Website | Tweets |  MODX Hosting
                    • 20707
                    • 42 Posts
                    I installed Revolution for a bit but the backend seemed buggy and slow. I know it’s built from the ground up but that could be both good and bad. I guess we’ll have to wait and see. smiley
                      • 1343 ☆ A M B ☆
                      • 2,213 Posts
                      Revolution is still in beta so they have yet to optimize things and there are still bugs. If you find those bugs they would love to know about them tho!

                      It’s not ready for production use yet so evolution is your best bet unless you like cutting edge and don’t mind fixing things.
                        Patrick | Server Wrangler
                        About Me: Website | Tweets |  MODX Hosting