Welcome to ExpressionEngine

ExpressionEngine is a web publishing and content managemnt application. ExpressionEngine provides a dynamic platform from which web publishers can manage their website.  ExpressionEngine is fast, light-weight, flexible, and modular.

The presentation of your website is created in real-time for each user viewing it. This dynamic approach allows your site to adjust its content based on criteria that you set; like each user's identity, the time of day, etc.

ExpressionEngine allows two-way communication and collaborative publishing, as information can be submitted by one user and made immediately available to other users.

ExpressionEngine displays virtual web pages. Traditional web sites (and even sites built with other publishing systems) require a separate file for each web page. ExpressionEngine does not utilize web pages. Instead, it displays your entire site using one file (usually called "index.php"). You won't edit this file, however, since its purpose is only to "trigger" ExpressionEngine. All of the pages of your site are built using templates in the Control Panel.

Content is separated from presentation in ExpressionEngine. With static websites, the HTML markup is woven throughout the content in order to provide formatting. In contrast, ExpressionEngine stores your content in a database separate from the formatting elements. The power of this approach is that it allows your content to be reused and formatted in a variety of ways. An RSS syndication page is a good example. The entries you submit in your weblog can be easily added to an RSS page without having to generate new content. By separating content from presentation, it becomes much easier to manage your website. As the author of your website's information, this separation allows you to focus on the pure content. The system will format it based on layouts you define. And since content is managed using only your web browser, it can be updated from anywhere you have access to the internet.

ExpressionEngine uses Templates to format the presentation. Templates generally do not contain content. They contain only the "presentation layer". That is, the HTML markup and dynamic elements that define how your content should be formatted. Templates provide a way to create a layout so that when you submit weblog entries and other content, it can be formatted to look how you want.

Contained within your templates, in addition to HTML markup, will be ExpressionEngine tags. These tags are responsible for pulling content out of your database and formatting it. Tags have many options, allowing you a great deal of flexibility and precision with your content. For example, you might want your weblog to show only the 10 most recent entries. This is only one of the many options available to you in your tags.

Core Modules and Systems

The core ExpressionEngine installation comes with the following installed modules and sub-systems:

Weblog Module

The weblog module supports an unlimited number of weblogs. When you install ExpressionEngine you start out with one fully functional weblog. You can create additional weblogs if you choose. Each weblog is fully discreet, containing its own submission fields, categories, entry statuses, etc. Further, each weblog, or combination of weblogs, can be assigned to a Member Group, permitting you to limit who can post in each one. You will find the weblog administrative pages located in the Admin area of the Control Panel.

Member Module

The member management system has a suite of user management controls and extensive preferences, as well as an advanced session management system with many security options. The member management system relies on the use of Member Groups to assign user privileges. Each user of your site, whether they are a registered member or an anonymous user, is a member of a Group. You can have as many Groups as you want, and each Group has over forty preferences that can be enabled or disabled, permitting you to precisely define what each person is allowed to do at your site.

Communication Module

The communication module permits you to send email. You can send individual email, or bulk email to your members and your mailing list (or combinations of all of the above). The Communication Module supports the three major email sending protocols that you will commonly find on most servers. Members of your community have their own Email Console, accessed though your site's member pages, which they can use to send email to other members. All email messages are logged and viewable by admins as a security precaution.

Mailing List

The core system comes with a basic mailing list manager. It allows you to run one mailing list. This module is tightly integrated into the communication module so that you can send email to various combinations of users. The mailing list is an "opt-in" type. When someone signs up for the list, they are sent a confirmation email containing an activation link. This prevents someone from adding another person's address to your list.

Session Management

A session is a span of time during which a visitor or user of your site is actively browsing or using your site. You can think of the session manager as a watchdog, keeping track of your users, and making sure they access only areas to which they are allowed.

Commenting and Trackbacks

The Comment Module permits your users to submit comments in response to your weblog entries, and the Trackback Module permits your site to receive "pings" from other sites that support Trackback. The comment and trackback preferences are found within your Weblog Preferences page. Each weblog can have different commenting and trackback settings.

Statistics Module

The statistical module stores various pieces of information that you can display, like the total number of weblog entries, comments, and members; the date of the last visitor; the number and names of all current users accessing your site, as well as the number of anonymous users; and the date and number of most visitors.


ExpressionEngine displays all dates and times in the local time of each user who is a registered member of your site. Each member can choose their own time zone and Daylight Saving Time settings.