Overview
What is ExpressionEngine?
ExpressionEngine is a content management system from EllisLab in 2002, a successor to pMachine Pro, a blogging system, which is written in object-oriented PHP and uses MySQL for data storage. ExpressionEngine is their flagship Content Delivery Platform.
TrustRadius Insights
Website development that's simplified and streamlined
ExpressionEngine. One CMS to rule them all!
Solid, more flexible alternative to WordPress
ExpressionEngine - the CMS of Choice
Great For Novices
EE Above the Rest for Client UX.
ExpressionEngine, Affordable Comercial CMS
Get ready to commit some time!
ExpressionEngine: A CMS Worth Checking Out
ExpressionEngine is dream of any developer.
ExpressionEngine can do it all... For a price.
Satdaya is a creative services firm that includes web development among our services. We recommend and use ExpressionEngine to our clients …
Free yourself from convoluted CMS markup with ExpressionEngine
Powerhouse CMS great for ecommerce and large sites
Popular Features
- Role-based user permissions (33)10.0100%
- Code quality / cleanliness (32)10.0100%
- Admin section (32)10.0100%
- Availability / breadth of extensions (32)8.080%
Reviewer Pros & Cons
Pricing
License
$299.00
Entry-level set up fee?
- No setup fee
Offerings
- Free Trial
- Free/Freemium Version
- Premium Consulting/Integration Services
Product Demos
Entry Analytics EEDPX Demo
EE Harbor's Transcribe Add-on Demo
ExpressionEngine Demo of a Staff Section
ExpressionEngine demo door Keesâ„¢ Internetbureau
DevDemon's Channel Forms add-on for ExpressionEngine
Solspace's Calendar Add-on for ExpressionEngine
Features
Security
This component helps a company minimize the security risks by controlling access to the software and its data, and encouraging best practices among users.
- 10Role-based user permissions(33) Ratings
Permissions to perform actions or access or modify data are assigned to roles, which are then assigned to users, reducing complexity of administration.
Platform & Infrastructure
Features related to platform-wide settings and structure, such as permissions, languages, integrations, customizations, etc.
- 9API(24) Ratings
An API (application programming interface) provides a standard programming interface for connecting third-party systems to the software for data creation, access, updating and/or deletion.
- 8Internationalization / multi-language(21) Ratings
The software supports multiple languages, countries, currencies, etc.
Web Content Creation
Features that support the creation of website content.
- 10WYSIWYG editor(30) Ratings
What-You-See-Is-What-You-Get editing tool allows users to build pages without writing code.
- 10Code quality / cleanliness(32) Ratings
Code generated by WYSIWYG editor is clean and validates according to W3C standards.
- 10Admin section(32) Ratings
The admin page is easy to navigate and use.
- 8Page templates(28) Ratings
The CMS has standard webpage templates or types of web pages (e.g. homepage, article page, interior page, blog page, etc.); users can also build custom templates.
- 7Library of website themes(11) Ratings
A library of website frameworks or themes is available as a starting point for building a website.
- 9Mobile optimization / responsive design(15) Ratings
The CMS helps users build webpages that work well on mobile devices – whether m-dot pages or responsively designed pages.
- 9Publishing workflow(25) Ratings
The software allows users to set up a custom workflow for updating the website, including approval processes.
- 6Form generator(18) Ratings
Users can build website forms for visitors to fill out.
Web Content Management
Features for managing website content
- 10Content taxonomy(25) Ratings
Users can create multiple levels and types of content categories including tags.
- 10SEO support(25) Ratings
The CMS helps users create the right website infrastructure (pagination, page headers, titles, meta tags, url structure, etc.) to increase the site’s visibility in search engine results.
- 10Bulk management(27) Ratings
Users can change an attribute on a group of documents or sites all at once through features such as global search and replace, making bulk changes easier.
- 8Availability / breadth of extensions(32) Ratings
There is a broad library of extensions, plug-ins, modules or add-ons that allow users to easily customize their websites without building custom code.
- 9Community / comment management(30) Ratings
Users can put post/page comments through an approval process, auto-approve commenters based on their email addresses, block commenters by IP address, delete comments, etc.
Product Details
- About
- Tech Details
- FAQs
What is ExpressionEngine?
With CodeIgniter, an agile, open-source framework, web professionals can use ExpressionEngine to build websites and applications. The software is meant to be useful for companies of any size and private individuals as well, and to that end it is highly customizable, and implementation may vary. Like many content management systems, various add-ons will determine what the system does, though the core features are somewhat broader than similarly classed free offerings. The Multiple Site Manager allows a user to create and manage multiple sites from a single ExpressionEngine installation. Nexcess (a partner) provides a hosting environment for an ExpressionEngine-powered website.
ExpressionEngine Video
ExpressionEngine Technical Details
Deployment Types | Software as a Service (SaaS), Cloud, or Web-Based |
---|---|
Operating Systems | Unspecified |
Mobile Application | No |
Frequently Asked Questions
Comparisons
Compare with
Reviews and Ratings
(86)Community Insights
- Pros
- Cons
- Recommendations
Reliable Performance: Many users have praised the product for its reliable performance. Several reviewers mentioned that the product consistently meets their expectations and performs well in various scenarios. Ease of Use: The ease of use is a common pro mentioned by several customers. Users appreciate how intuitive and user-friendly the product is, making it easy to navigate and operate without any hassle or confusion. Great Customer Support: Some users have expressed their satisfaction with the great customer support provided by the company. They have found the support team to be responsive, helpful, and efficient in resolving any issues or inquiries they had.
Cons:
- Quality Issues: Some users have experienced quality issues with the product, including defects and malfunctions. Several reviewers have mentioned receiving damaged items or products that broke shortly after purchase.
- Lack of Customer Support: Many customers have expressed dissatisfaction with the lack of responsive customer support. Several users have reported difficulties in contacting the company for assistance or resolving issues related to their purchase.
- Limited Features/Functionality: Some users feel that the product lacks certain features or functionalities they expected. Reviewers have mentioned specific features missing from the product, such as advanced customization options or compatibility with other devices, which have impacted their overall experience.
-
ExpressionEngine is recommended by many users as a great and promising update in the CMS market. It is praised for being free, open-source, and supported by a helpful developer community. Users suggest exploring extensions in the market to enhance its capabilities.
-
Improvement is needed in areas such as help and support, as well as managing SEO. Those concerned about security should consider alternative solutions. Reading the developer documentation thoroughly is advised, along with using EE Harbor extensions.
3.ExpressionEngine is suitable for creating different channels and effectively managing website content. It is favored by confident HTML and PHP developers seeking customization options. The platform is considered user-friendly and secure, with the ability to handle large data or databases through proper caching.
While some express concerns about the direction and progress of ExpressionEngine, many still regard it as a leading commercial offering. It is advised to carefully consider project requirements and customization needs when choosing between ExpressionEngine and other CMS platforms like WordPress or Drupal. The value of the EE support plan and the helpfulness of the community are also mentioned as factors to consider for web agencies.
Attribute Ratings
Reviews
(1-25 of 27)EE - The Peak of CMS Functionality.
- Highly flexible content management system.
- Incredible extensibility to provide any functionality needed.
- The best CMS experience on the market.
- Little challenging to get started for non-developers.
- Highly reliant on knowledge of the content structure beforehand.
ExpressionEngine - the CMS of Choice
- ExpressionEngine manages content and users extremely well and with ease.
- ExpressionEngine is reliable and scales for small websites to enterprise websites.
- ExpressionEngine has a large community following and many reliable plugins.
- ExpressionEngine makes a ton of calls to the database, so caching is extremely important.
- ExpressionEngine has a learning curve when learning to set up templates properly.
ExpressionEngine, not the worst but not my favorite
- Simple admin interface for the end user.
- Generates clean markup for front-end theming.
- Not flexible enough to create a really custom website.
- Source control can be a mess since it's mostly database.
- Data migration even core updates or server migration are not easy to make.
- Is not an open source license.
ExpressionEngine: A CMS Worth Checking Out
- ExpressionEngine offers a customizable publishing tool. Each channel can be customized for its specific needs.
- ExpressionEngine offers simple APIs that allows for many add-ons to be developed.
- ExpressionEngine's short codes make it easy to accomplish advanced coding tasks.
- PHP parsing was always an issue when creating templates.
- Upgrading ExpressionEngine was a difficult task. Many times I had to run the install more than once or recover from a backup.
- Disabling add-ons and modules sometimes resulted in major issues with the database.
Do you need a tool that will allow the client to create custom publishing fields?
ExpressionEngine is dream of any developer.
- We noticed extensive capabilities in the area of user management. The application allows for multiple administrators so that work can be spread out through multiple resources at a company rather than bottlenecking with the web developer.
- ExpressionEngine has gained a significant following through its high level of customization and ease of use. The interface is straightforward and offers easy access to both front-end and back-end editing. Because this CMS software is open source, you get the best of both worlds. You can add to your website’s functionality through the use of PHP, which means the functionality you desire from a website is easily within reach. For the non-technical user, you can simply work on your site from a simple front-end interface with a simple navigation.
- For functionality and flexibility, ExpressionEngine content management system software is a versatile option for operations large and small. It has obviously extended its reach to many professional websites, which is evidenced on the front page of their product site.
- ExpressionEngine has a thriving community base filled with veteran CMS users who can help you with questions through the community forum. For the programming-savvy individual, you have access to a developer portal complete with documentation, forums and tips for increasing your knowledge of the software.
- Very powerful CMS. Expressionengine can be thought of as a database, where you create your collections and tables and define all sorts of fields for them. Then you can gather the information in this collections any way you want and show it on front-end or at the backend.
- EE very easy to setup. For a site that is based on eCommerce/ Articles / News this CMS is excellent.
- Plugin, Module installation should be with ease. Upload as zip - install.
- Multisite function should be included with purchase and not be as separate module and restriction to 3 sites - it should be infinite.
ExpressionEngine can do it all... For a price.
Satdaya is a creative services firm that includes web development among our services. We recommend and use ExpressionEngine to our clients when their projects and IT needs require more flexibility than what most other content management systems can offer. D&D Technologies is one of those clients, and they have been with us and using Expression Engine since version 1.x! We have also built our firm's project management system with ExpressionEngine, and our software as a service venture, Eventida, also uses it.
ExpressionEngine is unique in that it allows you to build your own content structure to fit, manipulate, and output your information exactly the way you want. Its template structure is like a blank canvas - any HTML, any CSS, any Javascript, any PHP can be used within the templates any way you'd like. Therefore, it is a viable solution to many business problems that require managing and displaying information online.
- Content structuring. You can set up channels and fields to hold just about any kind of information imaginable; text, images, videos, numbers, code, etc. You can structure this information any way you want and in any order. You literally create your own information database just the way you want it using a clear, easy online interface.
- Template system. Utter freedom. Need I say more?
- Exensible. There are a lot of add-ons, extensions, and other external modules that extend the core functionality of ExpressionEngine. Need a user management system? Check out the User module at http://solspace.com.
- Big learning curve! In my opinion, ExpressionEngine is not really for the inexperienced, be it users or developers. Clients who aren't web-savvy have a hard time picking up the backend, and end up paying more for a custom front-end control panel to fit their project needs. Developers have to learn the templating language. It's not that complicated for someone who is experienced with HTML/CSS, at least, let alone a programmer, but still expect to spend weeks, if not months, learning all the ins and outs.
- It's not free or cheap. A license for the core ExpressionEngine software is currently $299 a pop. Premium add-ons can average between $20-$200 for their licenses, but there are also many add-ons that are free. https://devot-ee.com/ is the premier marketplace for ExpressionEngine add-ons.
- A relatively small user/developer community = above-average contractor rates. ExpressionEngine experts hard to find and do not come cheap, and understandably so. ExpressionEngine is a highly specialized and advanced CMS. Due to the price barrier, ExpressionEngine is nowhere near as popular as free WordPress or Joomla!.
- Poor software updating system. ExpressionEngine is NOT WordPress where you get pushed core and add-on update notifications, and apply them with a few clicks. Updating ExpressionEngine requires a developer who can manually go in, backup everything, upload specific files, and otherwise follow specific procedures that require time and expertise. Due to the changing and hazardous nature of the Internet, it's imperative to keep your software updated - so this makes ExpressionEngine not ideal for projects with small budgets.
- ExpressionEngine does a fantastic job in separating the content from the code, allowing you to build custom templates using only your own code and markup.
- ExpressionEngine has great documentation. It's easy to find clear and concise explanation of all of the core features.
- ExpressionEngine has a great module community. Many of the modules require a license, which will seem different from WordPress or Drupal, but many of these module developers also provide great customer service and support.
- I always seem to use a core set of modules (Structure, Matrix, Playa) when I build an ExpressionEngine site. It'd be nice if they were included in the core feature set. However, I'd hate to stop supporting the developers of these great plugins.
- As a new ExpressionEngine developer it was a little tricky to figure out the ExpressionEngine way of doing things. Coming from Drupal and WordPress, where the display was more married to the content, it took me a while to really get how ExpressionEngine handled everything. I haven't been a new ExpressionEngine developer for some time, so their documentation may well have changed in the past six years.
- I'd love to see an easier upgrade process. While upgrades aren't terribly difficult, they're enough of a hassle that I find myself wanting to put them off.
There's a Lot to LovEE about ExpressionEngine!
- The number one thing that I think ExpressEngine allows for is its flexibility. I always tell people there isn't anything that it can't do and that proved true in this case as well. For instance, we needed a few levels of membership for providing access to different areas of the website and ExpressEngine handled this without issue. In addition, some of the library resources are accessible based on that membership group.
- One of the things that I love about ExpressEngine is that it doesn't come with any expectations about your website look/feel/code. We created the layout and coded our pages, then plugged in the necessary tags.
- ExpressEngine is a very secure system out of the box, and there are numerous tips and guides to help you further secure the back-end. That was an important feature for us.
- The ExpressEngine community is probably one of the greatest strengths. There are so many great people involved who are willing to lend a quick hand or provide some advice to help out.
- For me, one of the greatest strengths of ExpressionEngine is also one of their weaknesses. There are so many add-ons available (some free, some not) for ExpressionEngine to allow you to do just about anything you want. However, the more add-ons that you use the more you have to deal with when performing updates. For instance, is the add-on compatible with the new version of ExpressionEngine - or even another add-on? What if that add-on gets abandoned by the developer - is there another that can perform the same functionality?
- I think that ExpressionEngine needs to offer more out of the box than it does. Yes, you can get add-ons for just about anything but this adds to the cost. I have a list of add-ons that I use on almost every site which can raise the cost of getting started with a new site by $100-300. So add that to the cost of a license and you're at $400-600 and you haven't even started working on it yet. For instance, I shouldn't have to buy an add-on to allow me to customize the menu for my end-users.
- The membership management feature is seriously lacking. Fortunately, there are add-ons (for an additional cost) to allow you to manage things better.
- ExpressionEngine has no preconceived ideas about how your content should look or what code is generated.
- A robust template engine makes integrating designs and content a breeze.
- The control panel can be customized to control what content managers have access to.
- The upgrade process can be tedious if your site uses more than a couple of add-ons.
- Back ups must be managed manually or by a third party system/add-on.
Also, you will need a developer and/or someone very familiar with content management systems to install and configure the software. There is nothing like the "WordPress famous 5 minute install" that will give you visible results very quickly.
- First-party and Community Support - ExpressionEngine has a large support base both from EllisLab, the maker of ExpressionEngine, and the vast community of users. Any challenges that arise during a project, there is either a third-party plugin or a solution already posted on a discussion forum.
- End-User Experience - Every website we build is custom from the ground up; no two are alike. Each install of ExpressionEngine is built and organized to fit that specific client. With the use of custom fields, our clients can easily update and maintain their website while keeping the styling intact. Many systems will give one large WYSIWYG box and it's up to the user to ensure the styling of the content matches the page and branding. ExpressionEngine allows us to create a entry form guiding them through the process of creating or editing a web page. We can decide how strict or loose the content areas are based on the technical expertise of the client or website administrators.
- Templates - The templates built into ExpressionEngine use native HTML for rendering. Within the HTML, we're able to inject their tags into our code to process the functionality. This makes moving our front-end code into the back-end quick and seamless. This is incredibly helpful for maintenance purposes as we find reading HTML is far quicker and easier to read and diagnose than PHP code.
- Third-party Plugins - ExpressionEngine has a large community of module, extension and plugin developers to help solve any challenge. Custom fieldtypes can be easily installed for better user experience. Powerful add-ons for eCommerce and site searches developed by well-known and highly reputable companies ensure support is always available. ExpressionEngine does not suffer from an over-abundance of third-party plugins questioning the level of support especially with ExpressionEngine system updates.
- License - ExpressionEngine is a licensed product and has a license fee that comes with each install. Most of the additional first-party functionality that is available outside of the core ExpressionEngine install has a license attached. For large websites with a lot of functionality, software licenses for ExpressionEngine and third-party plugins as well can cause the price to exceed the budget of a client.
- Third-party Plugins Required - EllisLabs has been making strives in adding native functionality into ExpressionEngine that would have required third-party plugins in previous versions. They tread carefully not to punish plugin developers who are selling their plugins by building it into the system at no additional charge, however certain functionality like page organization for site navigation should be already included and more streamlined for the client.
- System Updates - Compared to other content management systems, ExpressionEngine is not the easiest when updating to newer versions. Its a manual process of copying, uploading and moving files. There is no "push-button" approach without purchasing a commercial add-on by a third-party developer. With the requirement of third-party plugins to be added for user experience, each system update will require a proactive approach by the plugin developers and the admin updating the system to ensure the plugins will work on future versions. Most admins will wait several months to ensure plugins and minor bugs are ironed out prior to updating.
I did not give a ranking of 10 as there are some instances where other systems would handle the job better than ExpressionEngine; it's not the end-all-be-all. If a client is looking strictly for an eCommerce site, there are other systems that are better prepared for the task and will cut down on development time reducing the overall budget for the project.
ExpressionEngine - a CMS for all seasons
- Flexible templating engine - ExpressionEngine makes no assumptions about what type of website or application you want to create. It does a good job of separating data from data presentation, allowing you to choose the front-end framework that works best for your/your client's needs.
- Robust community support - The ExpressionEngine community is very helpful. There are many resources for third-party add-ons and technical support answers.
- Forward-thinking architecture - Built on CodeIgniter, ExpressionEngine uses a well-documented and proven PHP architecture that is scalable and powerful.
- Third-party AddOns - ExpressionEngine's flexibility is also a drawback. Because it makes no assumptions about your web project, it doesn't offer every feature under the sun. Expect to increase your budget to accommodate the variety of third-party AddOns that really make it shine. Not everything is done well, and some functionality is best left for dedicated third-party solutions.
- Configuration - ExpressionEngine requires time and expertise to get an installation really dialed in before you can hit the ground running. There are a lot of configuration options, and adding third-party AddOns to the mix increases the amount of configuration. However, this is a good example of the power of the software. You have a lot of options and can really dial in security settings, software behavior, administrative access and so forth.
It does a great job as a scalable and flexible CMS. ExpressionEngine begs you to be organized and think through your information architecture before you start coding. This is a good thing right? I think ExpressionEngine can quite possibly lead to a better website and a better user experience as you really need to think through channels, variables, custom fields and architecture.
Is ExpressionEngine the best form of expression?
ExpressionEngine was also used as the CMS for a corporate presence site for a well known cloud storage company.
- What you're given is a CMS with a strong database schema to group and deliver contextual data with fantastic ease of development. Accessing data from a table is an easy scripting language in which the results read like English language sentences yet still powerful enough to adapt to infinite design needs.
- No need to amend a template system. Build the templates on the fly and let ExpressionEngine deliver them. This resulted in an easy front end development with no learning curve. It was like having a blank slate in which the CMS would exist to mainly feed the data to the front end.
- ExpressionEngine can deploys the entire site as flat files for an extremely fast loading product which also pleases the SEO nerds.
- At it's base, all of the site, HTML, CSS, javascript, data, etc... , are stored in a sql database. If you have a site that needs to be dynamic: IE a site that has a blog, or comments, or customer contributions, you'll find that each and every page load would result in thousands of database calls. Queries to a database is some of the slowest transactions a page load can have. If the entire site is loaded through said transactions you'll find it's impossible to break any speed records. ExpressionEngine would not be my choice if those are a requirement. Though there are work-arounds. As of 2.5.5 there was no option to render part of the site as flat file and part of the site as dynamic.
- Because the development of the site is saved entirely in the database it became somewhat cumbersome save versions of the site to a git repository. The only difference between one install of ExpressionEngine and another is the database itself. You could make a SQL dump from one site and load it into another and have completely migrated the site. This sounds great if you need to migrate sites all the time, but backing up versions of an existing site meant backing up sql dumps.
- In EE v.2.8.1 you can now export template files to flat files so that database connections will be reduced. This addition will help the CMS greatly.
- This is actually in part and parcel with the last point. Being that git repository back up is difficult, collaborate development would also be a challenge. I was lucky to be the sole developer on my projects, but if you have multiple developers working on one product and they have branching code sets, the merging of this code would be time consuming, being that the developers would have to manually add the code to the same install rather than an easy deploy script. Why would this be? Because until the product is rendered to flat files it's all in the database. Of course this could all be overcome by having a dev environment that is shared by all developers. Then deploying to staging or production would just be the act of dumping then loading SQL files. But that is not the current work flow that developers have grown to appreciate.
ExpressionEngine: a solid CMS choice
- ExpressionEngine has a very good track record on security
- It doesn't dictate markup or styling or use predefined templates--100% of the outputted code is developer generated
- It is extremely customizable to fit a proejct's specifications
- Non-technical users find it very easy to use for managing their site content
- Performance can be an issue on complex pages--nested conditionals can result in slower load times
- A fairly powerful server is required to generate the many SQL statements in order to generate complex pages
- Many of the back end database tables are not normalized
- There is room for improving some of the base functionality (EE has done better with this recently--e.g. Grid)
- Corporate communication to users has historically been a mess
ExpressionEngine: The BIG Reliable.
- Flexible Templating
- Caching
- Custom Content Types
- Underlying framework based on codeigniter, could move to a more modern framework
- Could make use of Composer
- Better testing for add-ons.
An honest review of ExpressionEngine
- It has an extremely flexible front-end templating system, unlike most of the other CMSs that I have used.
- The community is very helpful and supportive. You can almost always get an answer through the Stack Exchange or Ellislab discussion forums.
- The third party add-on developer are very talented and you can find an add-on for just about anything you would need.
- Since it is a licensed product and not open source, it is not as widely used as other CMSs. I believe this is a benefit because it creates a niche for the developer.
- It's also more secure because it's not targeted by hackers and malicious scripts as much as the more popular CMSs.
- Pricing - At $300 per site, I feel like EE should come with a certain level of built in support from Ellislab. They just recently made support tickets a separate membership cost ranging from $50 to $2000 per month, it simply not an option for me. I've had to seek support from the Stack Exchange community instead.
- There are some built in features that and enhancements that I feel are missing in EE. I almost always have to install a third party add-on like Structure to help with building and maintaining pages and navigation throughout the site. This should be a core feature of any CMS.
- The built in search function is not very robust. I usually have to buy a third party add-on to enhance this function.
- The pagination function needs improvement. It just doesn't work well and it's very limited in the options and styles that can be applied.
- A responsive back-end would be helpful. Many other CMSs have adopted this approach in the last few years.
- It's really difficult to update the core system and plugins with ExpressionEngine. There are third party plugins that make this process easier like DevDemon's Updater, but I feel like EE could follow the lead from Wordpress and make updates and installs a built-in system feature.
A great CMS if you have a budget for development and support
This was basically a one-user part-time business, but it gave me pretty broad experience with the product.
- The template language is powerful and easy to use
- The user management and access controls are very good
- The back end control panel is very good
- The community and support is not as strong as it used to be
- Software updates are difficult and risky
- Most applications will require additional commercial add-ons
It's a better choice than WordPress if you require highly customized templates.
It's a good choice if you require strong member and access management.
Expression of Awesomeness with ExpressionEngine
- Control Panel customization. With the ability to install addons in mere minutes to help with tweaking the UI for the user, it removes much of the learning curve so even those not versed with a CMS can learn quickly.
- Flexibility. Not just for blogs! EE has the power to run full-featured blogs without a blink or make short work of forum websites, but that power can be used for any number of situations easily (simple pages, product lines, listings, etc.)
- Extendability. For those developers that like to get their hands deep into PHP coding, EE allows for easy extension of classes and creation of your own custom modules to do tasks that the core system doesn't already do.
- Community. If you don't opt for the official support (which is very good in my experience), there is a community of users that are available to answer questions you may have. There is also a great repository of add-ons (both free and commercial) to help you customize your project easily.
- Documentation. Some of the documentation on the website lacks clear information. However, support and community make up for this if you can afford to wait for an answer.
ExpressionEngine: Ellislab's side project.
This fact is important to remember because it's fundamental to how you implement and use it long term.
A few things to note:
- Copy and Paste development is actually expected.
- Versioning can be difficult.
- Upgrading IS difficult.
We migrated to Drupal and WordPress.
The community of EE has dwindled in recent months and with the announcement that the core framework is up for sale, it looks like the product is on its last legs.
It is still good for:
- Design Shops.
- People not maintaining it themselves.
- Small companies.
* All of this is based on my experience with the product, my interactions with other developers with extensive experience, people that I respect and encounters in the field.
- Once you understand the "ExpressionEngine way" of things -- it does what it set out to do, very well.
- It's not widely used, so one COULD consider that to be a security strength. (Note: we have seen it hacked before.)
- It's a common brand with design shops, so it's an easy recommendations as a solution to them.
- The community, is just no longer there. With most projects, this is one of the most important areas.
- Maintenance, upgrades, versioning, etc is a nightmare.
- It is NOT for developers. Thinking that will set you up for failure.
- Short lived projects.
- Design shops.
- Small companies.
Easy to use; difficult to develop
- Easy to use. We can train up new employees on how to use the system to perform all basic tasks in under 30 minutes.
- Effective interface design. The interface is surprisingly uncluttered and makes navigation easy. Additionally, they provide easy ways to customize the navigation and options available to each user.
- Secure. There are far less vulnerabilities using ExpressionEngine than the other CMSs we considered, such as WordPress or Drupal. We have never had an issue with security on our site.
- Convoluted development. Starting developed is a bit tricky, as the idea of channels, fields, field groups, etc. is not very intuitive. Takes building a site and then rebuilding to fully get the hang of.
- Poor support. Since there are many free alternatives, ExpressionEngine often lacks documentation that you'd expect it to have since there is not as large of an online community.
- Lacking default features. ExpressionEngine allows you to customize and expand it a lot, but out-of-the-box it has a lacking set of features. It is usually better to install plugins to help meet your needs. For instance, Structure is an almost required module if you plan on having to manage many pages.
- Secure. Built on CodeIgniter, EE has very few vulnerabilities compared to similar content management systems (e.g., WordPress, Drupal and Joomla).
- Flexible. The system is as strong or as weak as you make it.
- Easy to use. I've found that little training is needed to get team members and clients up and running in the system. I can set and forget it.
- Learning curve. The ideas behind EE can be confusing to some starting out building websites. And even for those who are used to using other CMS's, the terminology can be strange.
- Navigation. Native EE functionality doesn't support navigation very well. I'm always hunting for add-ons to help. Structure works in some instances. Taxonomy works in others. And then in some instances, I end up just using the template/snippet system which isn't ideal for clients who need to edit.
- Workflow and preview. Better Workflow as an add-on is really the only way to implement workflow in EE. It would be great if it could be natively supported at some point.
EE CMS Overview
- Bends around website design instead of the other way around.
- Good solution for large customers with different permission groups of users.
- Excellent for managing multiple websites under the same 'hood'.
- Be sure to discuss maintenance options with your customers - the update process is not difficult, but can take a bit of effort.
A Happy Designer With Happy Clients, The CMS That Works
- Easy to use: ExpressionEngine is a platform that takes little to no training with my clients, regardless of their technical proficiency.
- Easy to manage: ExpressionEngine can be easily hosted and updated at very little cost.
- Well supported: We choose ExpressionEngine because it's a commercial product. Our clients have purchased a license (an affordable one at that) and have a company they can contact for support or to report issues or ask questions (though issues are rare).
- Robust: ExpressionEngine has an impressive amount of functionality as-is, which solves the majority of a company's needs for their website. This sets it above other open source platforms that require a variety of third-party add ons in to get the desired functionality (leading to difficulty in updating and managing the website). If a third-party add on is needed they tend to be commercially supported as well.
- Potentially Limiting: This isn't a flaw, but eventually a company may outgrow the needs of a CMS website and need something with robust functionality, especially in regards to e-commerce.
- Two-way communication: ExpressionEngine as a CMS does not implement user-interaction well. If a company wants a way for their audience to interact with or manage content on their website ExpressionEngine will struggle. This doesn't reflect the ease our clients have from updating the site content from the ExpressionEngine administration.
- Lagging technology stack: ExpressionEngine lacks some of the more robust features for updating a codebase. Larger updates to a website may require downtime or "content locks" where our clients cannot add or edit content on their websites. Modern websites should be able to add larger updates seamlessly with a live website. Minor updates aren't a problem.
However, ExpressionEngine is not a robust e-commerce or custom software platform. If our clients seek to manage a robust and seamless online storefront, or to develop a fully interactive product, we will recommend other technologies to achieve this.
High-end CMS features, great community!
- Content management: very easy to log in and add pages or make changes.
- Managing global elements and implementing them site-wide. Need a new logo or sidebar element? Change one "embed" and it's implemented throughout your site.
- Dynamic content that needs sorting by date. From the obvious such as blogs, to the less so, such as event listings, EE's extensive category management, display options and sorting make it relatively easy to flow dynamic content into your pages.
- Simple commerce: yes, it's unsophisticated, but it's a breeze to set up and manage.
- Image management isn't as effortless as other solutions, but it's getting better ... plus, there are a myriad of third-party tools that add more features in this area
- Updating to the latest version of EE involves a lot of technical work in FTP, and can get messed-up easily if not done exactly right. It is a far cry from a typical OSX or Windows update experience, to be sure.
- This is not an in-page editing scheme, such as Barley — you will be managing content from a separate, back-end admin site, and so it feels less "hands-on" than the in-page CMS's out there. That said, there is way more power to EE than these other offerings.
ExpressionEngine Excels.
- Flexibility out of the box.
- Offers considerable add-on capabilities through its use of modules and plug-ins.
- Low entry price compared to others (such as Sitecore and Ektron), for all it offers and enables you to do.
- Updating - We purchased a module to take care of this (only 15 dollars), but easy updating should be built in
- Relationships - again, something that can be purchased but should be available.
- Default Admin color scheme. Nit-picky for sure, but shades of grey with hot pink highlights doesn't say professional. Again, something you can change.
ExpressionEngine? Hmm... Only if you like making your job easier and your clients happy.
- If you know HTML and CSS, you can begin using ExpressionEngine. Unlike other CMS products out there, you don't necessarily need to know PHP, C#, .NET, or any other language.
- If you DO know PHP, you can extend ExpressionEngine to limitless usages. The 'hooks' provided within the code base allow you to further stretch ExpressionEngine's capabilities to whatever needs you might have. You can think of ExpressionEngine as a 'development environment' that allows you to define the needs.
- ExpressionEngine allows you, the developer, to establish guidelines for your clients during the development process. There are no boundaries or limitations that bind you to specific realms.
- ExpressionEngine's control panel is clean, simple, and allows users to create, edit, and find their entries with ease.
- Maybe not a weakness per se, but one thing that tends to 'get' people in the beginning is the understanding of the parsing order. There are many thing that ExpressionEngine can do. One thing you will find yourself questioning is "Why aren't my variables rendering properly?". Many times it is due to a parsing order issue. One thing that can help with this is properly mapping out your development prior to beginning your code.
- The use of third party addons is a great extension to ExpressionEngine. However, you definitely want to keep a development version of your project on ice for any updates to, not only your addons, but ExpressionEngine yourself. There is not a good way to 'roll back' your project once you update your version.
- Multiple environment development scenarios can prove to be problematic. This is to be somewhat understood though due to the reliance of the database driven nature of the CMS itself.