3roadsmedia.com and threeroadsmedia.com are for sale. Interested parties should email info@3roadsmedia.com.

10 useful ExpressionEngine extensions

I discovered ExpressionEngine (EE) back in 2007, and have since become a devoted user and a huge fan. In my humble opinion, it’s far and away the best content management system on the market.

Having worked with it for some time now, I’ve had a chance to work with a number of great extensions, which I’d like to share with you here. To fill out my list, I went through dozens of extensions I had not used, testing and then hand-picking my favorites.

Here they are, in no particular order:

1. Edit Tab AJAX

Edit Tab AJAX takes advantage of the jQuery for the Control Panel extension (bundled with the latest versions of EE).

You’ll notice it at work on the “Edit” screen. Out-of-the-box EE requires you to first select a search criteria from one of the dropdown menus and then click “Search.” With the Edit Tab extension enabled, all you have to do is select an option from the dropdown menu and the results are loaded below, without a page refresh.

Look ma, no refresh!

Look ma, no refresh!

This might not seem like a big deal, but cutting out that extra page refresh on every search can save a bundle of time. The only downside: if you edit an entry, then click “back,” you’ll lose your initial search results.

2. Playa

One glaring limitation of EE’s custom fields is that you’re limited to a “one-to-one” comparison when relating entries.

For example, let’s say you have a “Featured Products” weblog, and you’d like to associate multiple products with a single “Featured Products” entry. Natively, you can’t — you’d have to create three separate weblog entries.

Enter Playa. Playa allows for a “one-to-many” comparison, so you can associate as many items as you want with a single weblog entry.

Using Playa to associate a single weblog entry with several related entries

Using Playa to associate a single weblog entry with several related entries

3. Redirect After Login

[[Update, 03.30.2011: The link to this extension is no longer good; the website appears to have just been updated!]]

This extension allows you to show or hide the default (read: ugly) login and logout screens, and to redirect your users to URLs of your choice after login and logout. This can come in very handy if you use EE to manage non-admin user accounts.

With this extension, you can easily redirect a user to his or her profile page after login.

The settings screen for the Redirect After Login extension

The settings screen for the Redirect After Login extension

4. MD Character Count

I came across this extension while looking for a way to show one of our clients how much space was left in a given field. This extension (one of my favorites) allows you to limit the number of characters in any of your custom fields (input or text area, of course). You can even control the message that appears below each field.

You can specify different counts, count types, and messages for every custom field (text input or textarea) across all of your weblogs

MD Character Count lets you specify different counts, count types, and messages for every custom field (text input or textarea) across all of your weblogs.

One nice feature is that you can specify a “hard” count (i.e., you absolutely can’t go over the specified number of characters) or a “soft” count (i.e., you can go over the specified limit, but you’ll get a visual cue that you’ve done so):

The character limit and characters remaining will appear below each field you specify

The character limit and characters remaining will appear below each field you specify

If you specify a "soft" count type, you'll get a visual cue if you go over the limit

If you specify a"soft" count type, you'll get a visual cue when you go over the limit

The only downside is that this extension doesn’t work with WYSIWYG fields.

5. Gypsy

Gypsy eliminates the need to create custom field groups, and instead allows you to assign custom fields directly to whichever weblogs you choose.

You can elect whether or not to make a custom field a "Gypsy" field

You can elect whether or not to make a custom field a "Gypsy" field

It’s incredibly useful for those times you need to reuse custom fields. If you have just one custom field that is different between two weblogs, regular EE requires you to create two field groups and duplicate most of the custom fields for the second group.

With Gypsy, you only need to worry about the fields, not the groups.

6. Live Look

If you’ve ever wondered why EE includes a “Preview” feature, know that you were not alone. Live Look enables accurate, live previews of your weblog entries from within the control panel.

Live Look resides in a separate tab within the Publish Form

I once was blind...but now I see

This extension is particularly valuable for clients, who appreciate seeing what their entries will actually look like before they go live.

7. LG Data Matrix

[[UPDATE 5 May 09: Brandon Kelly recently released an updated version of LG Data Matrix called FF Matrix FieldFrame. Unlike Data Matrix (which restricts you to certain field types), FF Matrix FieldFrame allows you to create custom field types. You can also easily convert your Data Matrix fields to FF Matrix fields.]]

This extension is a real life-saver, because it addresses a major shortcoming of EE: if you want to enter varying amounts of information for a custom field, you have to do one of two things:

  1. Create more custom fields
  2. Create a new weblog and set up a relationship

Let’s say you want to enter multiple tasks for a particular project. Normally, you’d set up a custom field named tasks and assign it to a weblog named projects. Then, you’d set the custom field to be a textarea, and enter all of your tasks in a big chunk.

But what if you want to associate more information with each task, like the date the task is due or to whom the task is assigned? If you’re like me, you hate “chunking” everything inside a textarea. It’s harder to format and rearrange data within a textarea, and it’s harder to read.

It would be nice if you could add and remove tasks without creating separate custom fields or an entirely separate “tasks” weblog.

That’s where LG Data Matrix comes in. With this extension, I can create a single “tasks” custom field, then create what are essentially sub-fields on the fly, as I need them.

This extension will change how you work with EE custom fields - note the icons for adding, removing, and rearranging your sub-fields

This extension will change how you work with EE custom fields. Note the icons for adding, removing, and rearranging your sub-fields

8. Cloner

Cloner is a neat extension that can come in handy if you ever need to duplicate an entry.

Cloner allows you to specify a suffix for the cloned entry's title and URL title.

Cloner lets you specify a suffix to differentiate the cloned entry from the original

You can clone single

You can clone entries one-at-a-time from the "Edit" screen

9. File

Anyone who has used EE knows that the built-in file upload functionality isn’t very user friendly. Mark Huot created File to make it easier to upload files using EE’s control panel.

File allows you to designate a custom field as a “File” type, which replaces the standard text input with a more user-friendly “Browse” button:

My custom field after uploading two images and clicking Quick Save

My custom field after selecting two images and clicking "Quick Save." I have enabled multiple uploads and thumbnails via Admin › Weblog Admin › File Upload Prefs

It would be nice if there were an upload button, since the extension requires you to quick save or submit before the files are uploaded. Otherwise, it’s stellar.

10. MD Add Sitename

I wanted to include Masuga Design’s Live Search extension here, but couldn’t get the latest version to work with my install. The screenshots and description alone had me sold.

This little extension is nonetheless very useful, especially for those developers who work with more than one EE site at a time. Once enabled, you will see the name of your site in the top left. Manipulating the font face, size, weight, color, and padding is a snap. You can also customize the site name if you don’t like the default.

Once enabled, your site's name will appear in the top left

Once enabled, your site's name will appear in the top left

Granted, the site name will be included in the forthcoming EE 2.0 release, but for the time being this is a good addition to your extensions arsenal.

Are there other EE extensions that you know and love? Feel free to share!


Posted in the Listmania category on February 12, 2009


  1. Chris Newton

    Not sure about MD Add Sitenam, but Leevi Graham’s LG Add Sitename will let you customize the HTML in that area, so you can easily add a logo, instead of just text.

  2. Jacques

    Wow these are great! I havn’t done much research into extensions so most of these are new to me. At least 2 will be very useful to a client I just told “sorry, can’t do that with EE”.

    Thanks for the list.

  3. Ryan Burney


    Thanks for pointing out Leevi’s extension (available here). It’s a nice improvement on the MD extension, since it lets you customize the CSS and XHTML directly. This has the benefit of allowing Flash, JavaScript, or any other HTML element in your header, which can yield some impressive results.


    I’m glad you found the list useful! I was in the same unfortunate position of telling a client “Sorry!” and then I found the LG Data Matrix extension :)

  4. Deron Sizemore

    Wow! I’ve used EE for over three years and still have never heard of a few of these extensions. Thanks for the great list.

  5. Chris

    Wonderful. Thanks for all your research.

  6. Ben Seigel

    Nice work. I will have to try the LG Data Matrix.

  7. Adam Khan

    Some new ones here for me. Thanks.

  8. Alex

    Your recommendation for LG Data Matrix is in the nick of time for me. I am about to start a project that requires this functionality and was thinking, “if only EE could allow you to add additional sub-fields as needed per entry” and here it is! Thanks for the recommendation and thanks, Leevi Graham!

  9. Ryan Masuga

    Hey, even I use LG Add Sitename, and I wrote MD Add Sitename! Mine was first…Leevi’s is better.

    And keep an eye on MD Live Search. I’m actively trying to fix those issues.

  10. Judd Lyon

    Killer list, I can’t believe I have overlooked a few of these. Data Matrix is going to save me some serious time.


  11. Simon Cox

    Great little list – some I had not come across and I have been using EE as long as you!

    Gypsy is the one I will try first – I love using custom fields but not being able to cherry pick what each weblog needs has made for some complicated IA on some sites I have built.

    Agree with Chris about Leevi’s Add Sitename extension – Visual logos are much better than a name – this is especially important when using Multiple Site Manager!

  12. Sean McGowan

    Sweet! Love it!!! Will definitely grab a couple of these. Thanks for the research!

  13. Giles Thurston

    Pingback: Bookmarks for February 16th through February 22nd – 10 useful ExpressionEngine extensions – 3 Roads Media Blog.

  14. Paul Galatis

    Ryan, you deserve a medal for publishing this list. Thank you.

  15. Leevi Graham

    Ryan Masuga originally wrote the add sitename extension. It says so in the docs 😀 so full credit goes to him.

    I rewrote it and added some features that I needed way back in the day including variable replacements and server time.

    There’s over 20 other ExpressionEngine extensions / plugins / modules on my site so don’t forget to check them out!

  16. Ryan Burney

    @Paul, thanks for that nomination – I wrote the list to be a helpful resource, and I’m glad that it has been.

    @Leevi, I thought about expanding my post to include more than 10 extensions (on account of you having written so many good ones), but decided my post would be too unwieldy.

    I wanted to include NSM Publish Plus, but felt it wouldn’t get a fair shake unless I tried it out first (it costs more than a cup of coffee :) ).

    Other honorable mentions of Leevi’s are the LG Addon Updater and the 3 extensions that allow Moxiecode’s TinyMCE and image/file managers to interface with EE.

  17. Leevi Graham

    @Ryan: How about a top 10 LG addons post 😀 – You have over 20 to choose from!

  18. Angel Grablev

    Great list, for some other cool lists i just started a website based on expressionengine that stores information about cool extenstions or modules for expressionengine and other great web development stuff. Check it out http://fzilla.com

  19. Dave Hall

    Great list and nicely explained. Thanks.

  20. Steven Grant

    I was looking for something that would limit characters in the CP.

    Step forward MD Character Count. Can’t believe nobody mentioned this on the forums when I asked.

Comments are closed.