Update on MT vs. EE

Playing more with ExpressionEngine and digging its User Support Forums helped me figure out some information that's worth sharing, since it impacts my comparison between Movable Type and ExpressionEngine.

The main point is that I don't think EE is ready to work for a weblog farm. While the site and documentation indicate that you can have multiple weblogs, the caveats are:

  • creating a new weblog does not create any template for it. It's a manual process and, as far as I can see, a rather cumbersome one. The default templates are capable of handling only the default weblog or all weblogs, but not a particular weblog without making them specific to it(*)
  • there is no way to selectively limit access to a set of templates, typically allowing weblogs owners to modify their own templates
  • the administration interface will not scale as the list of templates grows, since they are all displayed on one page! (a classic of UI scalability)

I understand that pMachine is working on a "user weblogs" or "community weblogs" module that would allow this, but there is no indication on when this will available.

This said, the claim that EE can manage multiple weblogs holds true. Simply it must be clear that templates have to be created manually for each weblog and managed centrally by the administrators, without an easy way to delegate this task.

For the technically inclined, here is, IMHO, the main difference between MT and EE when it comes to handling multiple weblogs:

Movable Type
MT templates are always executed within the context of one weblog at the time of (re)building pages, so there is no ambiguity here and, except for the case below, they do not contain any weblog-specific identification. This brings a huge benefit to templates: they can be duplicated very easily from one weblog to another without modification
Some tags (by default or from plugins) can address other weblogs (by inclusion or exclusion), in which case they point to weblogs by either their ID or their name
EE templates are invoked by the request URL dynamically at view time, but the system has no way of determining from the URL if a particular weblog is being requested
EE tags refer to weblogs by their name. You have to specifically hard-code the weblog(s) name(s) in every template when you want to handle a specific weblog, and I have found no way to pass that name dynamically to the template. When the weblog name information is missing, the template will use the default weblog (or all of them in certain cases)

So my conclusion is that if your goal is to quickly setup an installation that will drive tens or hundreds of weblogs, this is something MT has been designed to do from the start and I would not recommend EE until its users weblogs module is released.

(*) At least I did not find how to do it. If I'm wrong in assuming that, please correct me.

P.S. and now that MT3.0 Dev Ed is out with its licensing conditions, I guess I'll have to update my review soon :-).


Don't forget the option to link a template to a file in Movable Type. This should allow someone to point several blogs to the same template if they so desired.

There are a few ways around the fact that you have to hard code the weblog name in your templates in EE. One way is to replace the weblog name with a simple php variable and globally define it at the head of the template. I think you can use a global variable this too. URL segments are also automatically converted into tags so you could dynamically show different weblogs using one template just by changing the URL.

mensuelles Archives

Recent Entries

  • Steve Jobs

    "Remembering that I’ll be dead soon is the most important tool I’ve ever encountered to help me make the big choices in life. Because...

  • Your privacy on MOTOBLUR by Motorola

    After the Nokia Ovi Store carelessness, it's now Motorola who's allowing strangers to get access to your private information on their MOTOBLUR portal. Exactly like...

  • How to resume a broken ADC download

    (I'm documenting this trick for myself to remember, but it can be useful for others…) Apple, on its Apple Developer Connection site, has a bad...

  • WTF is this ‘myEventWatcherDiv’ doing in my web?

    All of a sudden I started to find the following line in most of the web pages I was browsing, including ones I made where...

  • Your privacy on Nokia Ovi Store

    My friend Adam Greenfield recently complained about the over-engineering culture at Nokia: I was given an NFC phone, and told to tap it against the...