Breadcrumbs in Movable Type

Freshness Warning
This article is over 15 years old. It's possible that the information you read below isn't current.

P. Obels asked

How do you get the links on top of your site in movabletype which point out where you are?


Home » Our Thinking » Measure Twice » Archive » Tools and Utilities

Since he’s not the first person who’s asked, and I’m getting tired of re-writing the answer, I’m blogging it so I can simply point people here.

The short answer is: manually.

Each MT template has the breadcrumbs manually defined. The only variable part of the breadcrumb is (in most templates) the last item in the list. So my archive template that creates both category and monthly archives has this in it:

<p class="breadcrumb"><a href="/">Home</a> » <a href="/thinking/">Our Thinking</a> » <a href="/blog/">Measure Twice</a> » <a href="/blog/archives/">Archive</a> » <MTArchiveTitle></p>

And the individual archive template contains

<p class="breadcrumb"><a href="/">Home</a> » <a href="/thinking/">Our Thinking</a> » <a href="/blog/">Measure Twice</a> » <MTEntryTitle></p>

May 5, 2004 12:28 PM

For my breadcrumbs I pass a "$crumbs" array into my PHP templating class and parse it out with a breadcrumbs() method. It took me about a day of sporadic head-banging to realize that some individudal archive pages were giving errors because they had apostrophes in their titles and I had forgotten to use <$MTEntryTitle encode_php="q"$>

May 5, 2004 12:37 PM

How about, for a category or a date archive: <a href="<$MTBlogURL$>">Home</a> / <a href="<$MTBlogArchiveURL$>">Archive</a> / <span class="Selected"><$MTArchiveTitle$></span> And for an individual arcive: <a href="<$MTBlogURL$>">Home</a> / <a href="<$MTBlogArchiveURL$>">Archive</a> / <MTEntryCategories glue=" & "><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></MTEntryCategories> / ...

Adam Kalsey
May 5, 2004 1:24 PM

For me, it's helpful to hardcode some of my URLs (like the archive URL) into the templates because of the way I'm sharing templates across blogs. But using MTBlogURL and MTBlogArchiveURL is probably best for most. Good suggestion. Howeverm I don't like the category list in the breadcrumb. For a breadcrumb to be useful (and it might not be according to some reaseach I've read) it needs to be concise. Having a list of all the places within the site architecture that this element *might* be found is counter-productive.

May 6, 2004 9:28 AM

On the matter of the category list: I get your point and I am bound to aggree. Still, this depends mostly on how one uses the categories. If one always prvides a category, an item always has a single 'main' category, which could be used for a single breadcrum. Have a look at my site and tell me if you think it's useful (and usable) here. (If you can see through the Dutch language! ;-) And while your at it, give some attention to my filenames too: Google loves these!

May 10, 2004 7:19 AM

I use the SubCategories plug-in [] for Movable Type to create a hierarchy of categories. I organized my categories so that the category hierarchy corresponds to what I want the breadcrumbs to look like. I then use code similar to that provided at the SubCategories site to generate the breadcrumbs.

Trackback from BnKB
February 6, 2005 11:17 PM

Breadcrumbs in Movable Type

Excerpt: Breadcrumbs in Movable Type :: Adam Kalsey Each MT template has the breadcrumbs manually defined. The only variable part of the breadcrumb is (in most templates) the last item in the list. So my archive template that creates both category...

This discussion has been closed.

Follow me on Twitter

Best Of

  • How not to apply for a job Applying for a job isn't that hard, but it does take some minimal effort and common sense.
  • Movie marketing on a budget Mark Cuban's looking for more cost effective ways to market movies.
  • California State Fair The California State Fair lets you buy tickets in advance from their Web site. That's good. But the site is a horror house of usability problems.
  • Customer reference questions. Sample questions to ask customer references when choosing a software vendor.
  • Comment Spam Manifesto Spammers are hereby put on notice. Your comments are not welcome. If the purpose behind your comment is to advertise yourself, your Web site, or a product that you are affiliated with, that comment is spam and will not be tolerated. We will hit you where it hurts by attacking your source of income.
  • More of the best »

Recently Read

Get More

Subscribe | Archives


Assumptions and project planning (Feb 18)
When your assumptions change, it's reasonable that your project plans and needs change as well. But too many managers are afraid to go back and re-work a plan that they've already agreed to.
Feature voting is harmful to your product (Feb 7)
There's a lot of problems with using feature voting to drive your product.
Encouraging 1:1s from other managers in your organization (Jan 4)
If you’re managing other managers, encourage them to hold their own 1:1s. It’s such an important tool for managing and leading that everyone needs to be holding them.
One on One Meetings - a collection of posts about 1:1s (Jan 2)
A collection of all my writing on 1:1s
Are 1:1s confidential? (Jan 2)
Is the discussion that occurs in a 1:1 confidential, even if no agreed in the meeting to keep it so?
Skip-level 1:1s are your hidden superpower (Jan 1)
Holding 1:1s with peers and with people far below you on the reporting chain will open your eyes up to what’s really going on in your business.
Do you need a 1:1 if you’re regularly communicating with your team? (Dec 28)
You’re simply not having deep meaningful conversation about the process of work in hallway conversations or in your chat apps.
What agenda items should a manager bring to a 1:1? (Dec 23)
At least 80% of a 1:1 agenda should be driven by your report, but if you also to use this time to work on things with them, then you’ll have better meetings.

Subscribe to this site's feed.


Adam Kalsey

Mobile: 916.600.2497

Email: adam AT

Twitter, etc: akalsey



©1999-2019 Adam Kalsey.