Movable Type Docs > Designer's Guide

Designer's Guide to Movable Type

Like any basic content management system, templates control the content presentation layer for all pages published by Movable Type. The templates provide a generic framework of content which is consistent between all pages published with the template in addition to placeholders for variable content such as user, entry and blog information.

About Movable Type's Templating Language

Presentation is as important as content, so Movable Type's template system allows you to produce pages that showcase your content exactly as you wish. Templates describe where you want to put your content and what that content should look like, using special markers (tags) that are typically mixed with another markup language such as HTML or XML. When you perform a site rebuild, templates are merged with content to create a page that visitors can view in their web browsers. The template engine is crucial to automating this process.

When a new blog is created, it is supplied with its own distinct set of default templates that produce the files listed in the previous section. Weblog Administrators or any user with template management privileges can view and edit these templates.

Most of the non-variable content in the templates is comprised of basic HTML tags (or XML for feeds) and surrounding text. The areas for insertion of variable content are marked by Movable Type template tags. These tags are very similar in their appearance and function to HTML tags, giving template designers a familiar set of tools to work with and eliminating the need to learn an additional programming language just to change the display of the entries on a blog.

The familiarity of the template tags combined with a model of separation of content and presentation allows for both the push-button publishing ease-of-use and ultimate control over the final published product for which Movable Type has always been known.

Overviews and Introductions

Template Sets

Upgrading Templates

Editing and Managing Templates

Managing Styles

This page was last updated on 2008-05-08, 02:31.  

0 User Contributed Notes

timfel Author Profile Page said:
Is there a guide to the default templates supplied with MT4?

The default templates are no use to me as I need to create more bespoke designs but I don't want to discard them and start from scratch as there is some very clever stuff in the way that they are modularised so that one template serves several different purposes and they modify themselves depending upon how they are being used. I'd like to retain some of these features so I'm having to take them apart bit by bit and find out what does what, which is OK but it's slow. Is there a guide to how they work?

As timfel asked above, it would be great to have some more detail on how to change a basic MT4 default template. Also, it would be great to have some instructions on how to copy a default template with a new name so we can bootstrap from an existing template without messing it up.

Byrne Reese Author Profile Page said:

@Alberto - That capability does not exist yet. It must be done manually. But I hear there is a plugin called Template Exporter and another called Template Importer that could help achieve that you are describing. Check mt-hacks.com for them.

I notice there's a conspicuous lack of a link to pages on the Widgets and Widget Sets in MT4. I'm loving the attempts in 4.01 beta 2 to make the system more user-friendly, and widgets are a big part of that. Please tell me more about them!

Anil Dash Author Profile Page said:

We're starting to get together some good resources on the default templates. Take a look at the extensively-updated mt:Entries docs, MT4's comment templates for MT3 users, and MT4's main index default templates, which are all works in progress, but should provide a good place to start.

Brad Bell Author Profile Page said:

Following on from timfel: I love the new modular design as much as the next mildly obssessive compulsive designer, but it's quite a bit of work deconstructing it.

However, I did find this, which I think is exactly the kind of thing we clamour for:
http://pics.livejournal.com/chasethestars/pic/000g2exs.gif
It's not for MT4, but it looks like the same scheme was used, so it might help.

The image linked to above came from the following page, which explains a few other things, although it's really about LiveJournal, VOX and Expressive.
http://community.livejournal.com/lj_design/8831.html?thread=1192575

@Brad, that diagram you linked looks interesting. It would be great to have something similar for MT4 as templates/themes are quite confusing when you're coming into MT for the first time.

I'm actually working on a diagram like that. Will have it up soon.

nathanrudy Author Profile Page said:

All I want to know is how to have a two column blog. The search produces nothing. I search on the MTSetVar info in the Main Index template and get nothing about what any of those variables mean.

The provided main index template is three column, but I don't know how to set or unset that. There's no explication anywhere of simple stuff like that, just incredible long lists of stuff to run through with the majority of it useless unless you are building a huge site.

All I want to do is have a few blogs on the site linked above. Since I have a template, that shouldn't be too hard. But apparently it is.

I loved MT up until 3.x, but this is frustrating as all get out.

nathanrudy Author Profile Page said:

Has anyone else noticed that the search function for this site is not accurate or complete?

I now know that the # of columns is set in the body tag, but can't figure out how to do it. Any help?

Submit a User Contributed Note

User contributed notes are a great way to share the knowledge you have gained in using Movable Type.

If you have a technical question or problem, please visit Movable Type Support.

(If you haven't left a note here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)