ExpressionEngine 2.0 - worth the wait
It’s been a long time coming, but ExpressionEngine 2 is finally here, and after using it on a number of projects, I can say that it was worth the wait.
This is not meant to be an in depth post, but merely a few points that I especially enjoy about the new EE. Because some of the features are more technical in nature and not necessarily of great interest to end users (our clients) I want to separate the points into those two categories; Clients and Developers:
Better Control Panel - The actual CMS looks a lot better than EE 1 (hey, Ellis Labs even seemed to brand it with the Headspace hot pink. Good taste I guess). Above and beyond just aesthetics, the new control panel is actually easier to use. There is more use of AJAX effects and JQuery enhancements, which means less rooting around and clicking on multiple nested links to get to where you want.
File Management and Uploads - I can admit it - uploading and managing images and other files, and then inserting them into posts was painful for clients in the old EE. Now it couldn’t be simpler. I can now create custom fields in the admin as upload fields, so the upload/browse function exists right where it makes sense - even cropping and resizing right there with no hassles. There is a simple file management tool, where you can easily see all of the files on the server, and you can view/edit/delete them with only a few clicks.
Complete CodeIgniter Compatibility - OK, this point probably belongs in the developer heading, but then I thought about it; This serves end clients as much as it does developers. For those who don’t know, CodeIgniter is a popular, free, open-source PHP framework that Ellis Labs created for developers to rapidly build custom web applications with. Unlike EE1, the new ExpressionEngine is actually a product of CodeIgniter, being directly built off of the platform (When you download EE, you are actually downloading CodeIgniter with an ExpressionEngine folder inside it). What does this mean for clients? More back-end power and flexibility so developers can create more customized functionality within ExpressionEngine, and make it behave like a true web application. There is virtually nothing you could need on the web that EE can’t do for you.
Snippets - Common repetitive blocks of content or code that appear through your site used to be managed with embedding templates in EE1. That meant more database queries and slowed down your site if you weren’t careful and selective. Snippets allows me to place common blocks of code (PHP, ExpressionEngine tags, or just static markup/CSS/JS) within a snippet and include that whenever and wherever I feel like it. It is not included like the templates, it actually just becomes part of the page when loaded, using no database queries - thus allowing me to work more efficiently, write less repetitive code, and still keep sites light and fast.
Template Saved as files - This feature was technically possible in EE1, but I could never seem to get it to work right. In EE2, it is easy to sync templates to HTML files on your server. Instead of fumbling through templates in the control panel and updating the database each time I make a small edit, I can now just work remotely off of HTML pages in my favorite coding editor (Coda) and just save them when complete, just as if I was coding a static website. Collectively, this saves maybe hours of time on a project and is much more enjoyable to work.
These are just a couple of things I wanted to note about ExpressionEngine (I promise they are not sponsoring Headspace). It’s nice to have more firepower in our back pocket, and I look forward to getting into EE2 more over the coming weeks and months.