Not a developer? Go to


The Movable Type 6 Data API: What It Means for Developers and Publishers

By Dave Aiello
Posted November 13, 2013.

Movable Type 6.0 was released at the Movable Type Idea Exchange in New York about a month ago. Did you hear about it on or CMS Wire? Not really. Why is that?

Because CMS industry pundits are generally focused on dynamic publishing platforms such as WordPress, Joomla, and Drupal that have their individual unique features, but solve the same problems in very similar ways.

Although Movable Type competes with these systems, at its heart the architecture goes about managing and publishing content quite differently. Its core feature is static publishing, which is built around the idea that most of the content on your website is there for the long term, and is going to change very little after it's been created and published.

Was "Dynamic Publishing" Really That Revolutionary After All?

WordPress came along about 10 years ago, and advocated dynamic publishing as a revolutionary way of serving content.  This would allow for a very customized user experiences, and content would flow to different pages on the site much more quickly and smoothly than it did under static publishing.

Although dynamic publishing improved the apparent speed of the CMS backend for some users, the content display advantages that were touted early-on never really lived up to the hype. So, the biggest change that WordPress brought was that pages were displayed on the fly for each site visitor, and therefore always contained the latest content.

The only problem with this way of managing and publishing content is that pure dynamic publishing doesn't scale very well. So, the WordPress community worked hard and created-- caching plugins for WordPress-- which simulate the kind of static publishing environment that Movable Type made famous.

So if managing large numbers of site visitors with minimal resources and complexity is important to your site, why not use MT?  Then you get the scalability you want with fewer third-party components.

Why Not the Best of Both Worlds?

Let me try to be fair about the static publishing versus dynamic publishing debate: modern CMS-based websites need the best of both worlds. The question is whether any CMS available today does a better job of it than the others?

This brings us to the number one new feature of Movable Type 6.0 that has so far been undervalued by the industry: The new Movable Type Data API.

The MT Data API: Not Perl, Not PHP, But a JavaScript API

Until Movable Type 6, Movable Type has never had an easy way for programmers to access the content in its database for dynamic page generation. The Movable Type Data API addresses that issue in a fundamentally more modern way than WordPress does. The Movable Type Data API is developed by the Movable Type development team itself (it's not a plugin created by a third-party developer); It opens up MT to JavaScript programming using ultramodern tools like jQuery and jQuery Mobile.

This ought to end the sort of criticism of Movable Type that said:

  1. Movable Type isn't a modern CMS because the core code is implemented in Perl (still true, but the Data API further abstracts use of the data from the core), and more importantly,
  2. Any kind of complex custom development required Perl programming skill and knowledge of Perl data structures to execute. 

What could be easier for web designers in 2013 than coding websites in HTML, CSS, and especially JavaScript?

The Data API as an Alternative to Plugin Development

Now, instead of developing plugins in Perl that expose custom Movable Type Markup Language Tags, just use the Data API with jQuery to get data from Movable Type and add it to the DOM as data attributes, like you do with any other JSON data source.

What Can Be Done With the Data API?

What does this mean for you? What can you do with Movable Type 6 that it couldn't do before? Below are a few examples.

  • Smartphone applications that can be placed in the Apple App Store or Google Play. They can be constructed using frameworks like PhoneGap or Sencha Touch.
  • Widgets for your website that stream or list content published in Movable Type. For instance, dynamic display of comments associated with blog entries or website pages would give you a way to create scalable communities without relying on external social networks or third-party comment management solutions.
  • Custom applications for news gathering, developed for any platform but especially tablets like the iPad or Android tablets.

The continued growth of Movable Type lies in expanding use of the Data API. Developers who master these programming techniques will be able to build features for Movable Type published websites faster than these same features can be built for WordPress and other competing CMS solutions.

With most publishers and brands having an ever evolving tech-savvy customer, rapid development is crucial to staying out in front of their wants and needs.


1 Comment


lucybrown622 on January 12, 2014, 12:06 p.m. Reply

Now, instead of developing plugins in Perl that expose custom Movable Type Markup Language Tags, just use the Data API with jQuery to get data from Movable Type and add it to the DOM as data attributes, like you do with any other JSON data source.

Dave Aiello

Dave is the CEO of After6 Services LLC, the largest provider of Movable Type Pro support. After6 is headquartered in Newtown, PA.

Before he started After6 Services, Dave was the co-manager of Movable Type Pro and Enterprise Support for Six Apart and worked on large-scale Movable Type deployments for Six Apart Services in New York City.

Twitter: @daveaiello