#native_company# #native_desc#

A Developer’s Look at ExpressionEngine 2

By W. Jason Gilmore
on July 30, 2010

A few months ago I wrote a series of articles highlighting PHP-driven
content management systems
and frameworks,
and I singled
out ExpressionEngine
as one particularly impressive solution that
effectively balances the best features of both. This popular Web
development solution recently took another major step forward with the July 12
release of ExpressionEngine 2.1,
the product’s first major upgrade in
several years. Version 2 sports a number of new features and significant
improvements over its predecessor, many of which I’ll highlight in this article.

CodeIgniter Integration

The company behind ExpressionEngine, EllisLab,
, also happens to be the creator of another popular Web development
solution known as CodeIgniter. As EllisLab
President Leslie Camacho discussed during last year’s ExpressionEngine CodeIgniter
European Conference keynote
, the blurring line between website and Web
application prompted the company to reconsider the strategy for building
ExpressionEngine 2, concluding that rebuilding the product as a CodeIgniter
application was the most effective way to accommodate the increasingly
sophisticated needs of developers.
This move will likely have several positive consequences, notably
EllisLab’s ability to more effectively evolve both products thanks to the wide
range of new use cases which will inevitably arise due to the integration.
Further, ExpressionEngine’s new status as a CodeIgniter application greatly
reduces the overhead involved in extending ExpressionEngine thanks to the
ability to integrate multiple CodeIgniter applications. The
ExpressionEngine community also gains access to a great deal of existing documentation and
other CodeIgniter community resources.

Redesigned Control Panel

ExpressionEngine 1.X’s control panel is packed with tools capable of managing
nearly every conceivable aspect of a website. However, navigating to
those tools can be a bit tedious because many are buried deep within the interface.
The ExpressionEngine team clearly acknowledged the amount of time site
administrators spend working within the control panel by improving and streamlining the interface (see Figure 1), even going so far as
to hire internationally recognized design expert Veerle Pieters to participate in the
redesign (Veerle talks about the project in an EEInsider interview).

Click here for larger image

Figure 1. The Streamlined ExpressionEngine Control Panel (source: ExpressionEngine

Improved Template Management

ExpresionEngine 1.X supported the ability to manage templates via the
Web-based control panel and also via text files, which could be updated using an
IDE such as Dreamweaver. However, it was an either/or proposition, meaning you
either used the Web-based interface or an IDE; there was no simple way to
synchronize the two repositories without purchasing a third-party module or
devising some other custom solution. Further, new templates had to be created
and initialized using the control panel, making for a tedious and time-consuming
process when developing large sites.
All such disadvantages have been erased in version 2, with ExpressionEngine
now capable of automatically detecting not only the addition of new templates to
the designated file-based repository and updating the site accordingly, but also
detecting the addition of entirely new template groups. Further,
ExpressionEngine can determine when the database and file repositories are
out of sync, and it provides you with an easy tool for making sure everything is
properly synchronized.

Integrated File Manager and Image Editor

One of the biggest gripes about 1.X was the limited access to a basic file
upload and management interface. Because Web publishing has evolved far beyond
posting solely text and graphics, a great deal of effort was put into improving
EE 2’s file management capabilities, with a global file manager available in the
new release (see Figure 2). This manager organizes all uploaded files according to title, size,
type, and publication date, and gives you the ability to categorize files
according to topic or other variable.

Click here for larger image

Figure 1. Figure 2. EE 2’s
Integrated Image Editor (source: ExpressionEngine
Also gone is the need to invest in expensive or complex image editing tools
if your needs are limited solely to basic graphic editing tasks such as
cropping, resizing and rotating. Version 2 includes a basic image editor
capable of carrying out all of these tasks.