Tom Jaeger and the rest of the ExpressionEngine development team unveiled some big news at the EEConf 2021 fall conference. Some really big news.
ExpressionEngine 6.1 and a new Pro version were announced and demoed, and it’s safe to say we’re getting a lot more than anyone expected. Tons of new features and improvements make this 6.1 update look a lot more like 7.0.
And, most importantly, they manage not to remove anything from the standard version. Instead, Pro is its own thing. Those who need it will love it, while the rest won’t feel like second-class citizens running a demo. That in-and-of-itself is an incredible feat and a testament to the team’s respect and care for the product and the community.
Even though some people (myself included) were skeptical when we heard a Pro version was coming, in the end, it all makes total sense. At the end of this article, I analyze my own “pro-phobia” and why I was very wrong about it.
This article is an amalgamation of news from the EEConf presentation, information from preliminary documentation and other sources, plus my own quick testing of ExpressionEngine 6.1/Pro.
So, let’s dig deeper into all of the exciting news.
Please note: This article will be updated as we learn more about all the new features. And, of course, as we update this site from ExpressionEngine 6.0.6 to 6.1 Pro. You can see what has been updated, clarified, and added here.
Table of Contents
Price and Availability
Since we learned that the 6.1 and Pro versions were close, we have all had two questions on our minds more than any other: When will they launch, and what will Pro cost?
So let’s get those taken care of right now:
- ExpressionEngine 6.1 and ExpressionEngine Pro launched on the 6th of October 2021, so you can download them now.
- ExpressionEngine Pro will cost $199/year or $19/month.
- Note: At the moment, there is a limited-time offer where you get $50 off for the first year, making the current price $149/year!
First, we’ll cover the news and changes in ExpressionEngine 6.1 as a whole, and then we dig deeper into the Pro version. What ExpressionEngine Pro is, how it’s not what we thought, and how the developers managed to create Pro without gutting the free version.
New Rich Text Editor option
With 6.1, we now have a choice of rich text editors with the new option, Redactor. In EE 6.0, when you created a new Rich Text Editor field, you got CKEditor 5. That has worked well and still ships with 6.1, so nothing will break.
However, many developers have needed an option that would let the user edit the raw HTML of Rich Text fields. CKEditor does not allow this, which is an intentional decision by the developer. So the ExpressionEngine team worked with Imperavi to license their editor, Redactor.
It’s as simple as choosing the one you want for your Rich Text field when you create it. Or, you can change it after the fact, retaining any text already present in entries.
Here is an example of both editors showing a “press release” I wrote as a test :)
Control Panel UI Updates
The hugely improved Control Panel introduced in 6.0 has been further optimized and refined in 6.1. Some highlights are:
- Breadcrumbs will be rolled out more broadly in the CP, most notably in the Entries area, because people have wanted that.
- You can now hit Cmd-S or Ctrl-S to save an entry or template - nice!
- Plus, a ton of further UI improvements throughout the back-end.
ExpressionEngine 6.1 introduces native reCAPTCHA support, an excellent addition that will please a lot of developers. reCAPTCHA v3 was chosen because of its better accessibility than previous versions.
There is a new Request add-on that allows templates to access GET/POST cookies, IP addresses, User-agents, Request Headers, and so on.
Changes to Cookie-handling
There are major changes to how cookies are handled:
- All consents are now logged, including guests.
- As many cookies as possible have been removed.
- All front-end cookies have been converted to session cookies.
- And consent versioning has been added to the audit log.
Command Line Interface changes
The Command Line Interface (CLI ) functions, accessible via
/system/ee/eecli.php have been expanded substantially. Three new sections with options have been added to eecli.php which we’ll run through below.
The three new sections are:
- cache:clear: Clears all ExpressionEngine caches.
- make:addon: Will, through a series of prompts, create an add-on “shell” that you can get started with.
- make:command: Enables you to make your own CLI commands. Very useful when you have a long-running process, because PHP on the command line does not have a timeout. Allows you to run beyond a web request and enables you to keep running.
- make:migration: Migration is most commonly used to make database changes. They all have an up and a down command or method. It will basically apply or revert changes to the database. For example, if you run an up command and modify the DB in this way, then a down command would revert those changes. So, we have the ability in 6.1 to have migrations both at the core level and in add-ons.
- make:prolet: Prolets are add-on components that reveal some of an add-on’s functionality from the Control Panel to the front-end, making it possible to edit data directly on the front-end page.
- migrate:addon: Runs add-on migrations.
- migrate:core: Runs core migrations.
And finally, a few more features in 6.1 was highlighted by Tom Jaeger:
- The image modifiers that were introduced in 6.0 can now also be applied to category images.
- Live Preview can now be disabled for a given channel.
- And then there are, to quote Tom: A ton of UI improvements, bug fixes, and a good number of security fixes as well.
Now, let us move on to what ExpressionEngine 6.1 Pro is — and what it is not. Tom Jaeger gave the following reasons and goals for Pro. Note that the [clarifications] are mine.
When we first started thinking through Pro and what it would be, we set a few guideposts for ourselves:
- ExpressionEngine Pro is not a bunch of add-ons that have been bundled together. Pro is something new.
- We didn’t want to take [any features] away from the existing ExpressionEngine platform and product that people love and ultimately make [those removed features] Pro features.
- We wanted Pro to come alongside and add to the ExpressionEngine we all know and love. We needed it to elevate the product we know.
- We also wanted it to be something that any existing site could take advantage of. We wanted it to be installable on any existing site.
- Pro is not just about front-end editing. It’s really pulling the CP forward. This is how we get around the limitations of traditional front-end editing.
- Pro is about allowing web developers, agencies, designers, etc., to bring the content admin experience directly to the Content Admin in a friction-free way.
What is ExpressionEngine Pro?
Perhaps the biggest news in Pro is front-end editing, which we’ll cover below. But as you will see, it’s also much more, so let’s check it out.
With ExpressionEngine Pro installed, the Control Panel homepage can be completely customizable. Pro is shipping with a set of dashboard widgets that can be shown, hidden, or reordered. Each member can customize their own dashboard layout.
- Custom Logo: A custom logo can now be added to the log-in screen. This is the first step towards further customizations as a whole.
- Customize per User: Developers can customize what is displayed and what is most valuable to the individual user or editor when they log in.
The Dashboard is the first page you arrive at when you log in to the ExpressionEngine Control Panel, so it’s valuable real estate. With Pro, people get the ability to control what is displayed or hidden.
There are two new ways to create Dashboard Widgets that put a lot of power into developers hands:
- The first is with a PHP file: This is specifically helpful for add-on developers who would like to ship a Widget with their add-on. Or for someone who wants to pull in third-party [external] data.
- The second way is with native ExpressionEngine templates: When you install Pro, a new Template Group gets added, called Pro Dashboard Widgets. This opens the Dashboard up to all the functionality and flexibility that the ExpressionEngine templating language offers.
See Dashboard Widgets in action: If you want to see Dashboard Widgets in action, Brian Litzinger demoed how his company, BoldMinded, has implemented them, specifically in their product Publisher. You can see this in the EEConf 2021 presentation on YouTube at 38:30 or go there directly by clicking this link.
Next Level Cookies
In addition to the cookie changes for 6.1, cookies are brought to the next level in Pro. Tom explained that they hooked into the core cookie service in EE and are allowing people to override the cookie lifetime values. Not just for the core cookies, it applies to all cookies set by the core services and add-ons as well.
- Cookie Interface: An interface is now provided to manage Title, Description, and Lifetime values.
- Cookies & GDPR: Because of international laws, where some are much stricter than others, it was appropriate to elevate the core cookie functionality. But also to bring next-level cookie handling and functionality to Pro.
Exporting of Consents
You can now export consents for Compliance Audits etc.
Low Search & Low Variables
These two add-ons are included with Pro since they are used by so many sites, and are supported by nearly all other add-ons. They are also great products, and the team didn’t want to reinvent the wheel.
Tom Jaeger mentioned that had they stopped here, they felt Pro would still not be the best it could be. It would not be enough. They want developers to be able to bring unparalleled value to their clients.
So Tom brought in Andy Johnson from Harpoon to “show what we’ve really been working on”. That turned out to be Front-end Editing, which we’ll take a look at next.
Bringing the power forward
One of the biggest features in Pro is bringing the full power of the CMS to the end-user, even when they’re viewing the front-end of the site.
Front-end editing is not like regular “click-to-edit” functionality that other platforms use. It really is pulling the control panel forward.
When you click an edit button on the front-end, you don’t just get a box where you can edit the text. You actually get the control you’re used to from the back-end. For example, when editing a complex field-type like relationships, its control is brought to the front. And, as shown below, looking like it does on the back-end.
And that’s a very important distinction. Because if they had done it the way everyone else does, they had run into the same limitations as they all did — and all suffer from. You can see it in action here.
Next, let’s take a look at front-end editing in more detail.
- Pro makes it possible for end-users to make content edits directly on the website/front-end. Without needing to go to the Control Panel.
- An Edit button will be displayed on the front-end wherever an edit is possible.
- You can fully customize where and how these buttons appear on the page and make sure they don’t break the existing layout.
- If you want to hear the thoughts behind front-end editing and the many trials that resulted in this approach to it, Andy tells the story in the presentation at 46:12. He also demos how only the specific back-end control needed to edit a particular part of a page is pulled forward to the front-end. Click here to jump there directly. It’s really interesting.
- There is also a great video here showing and explaining front-end editing, on a site updated directly from ExpressionEngine 2 to 6 and then 6.1 Pro.
- As mentioned under Command Line Interface above, Prolets are add-on components that reveal some of the functionality normally found in the Control Panel, to the front-end.
Prolets pulls the essence of an add-on, or parts of the Control Panel, forward to the front-end.
Prolets are placed in the new Dock on the front-end (see below).
- The Dock is a floating bar displayed on front-end pages that provides quick access to the Control Panel and Pro’s front-end facing features. Below you can see the Dock with a single Prolet added, and then with a few more:
That’s it for the run-through of ExpressionEngine 6.1 and Pro. But before we leave it completely, let’s look at why Pro wasn’t the thing many of us thought it would be and why that’s excellent.
I thought a Pro version would be terrible — I was wrong, and here is why
That was a run-down of the new versions and their features. More coverage will follow, of course. But before I go, I must confess something.
Because I had been very skeptical, angry even, ever since I saw the abbreviation Pro mentioned in the same sentence as ExpressionEngine.
– Here we go again, I thought. A paid version that will surely ruin everything!
Just as Packet Tide and the rest of the team had come and breathed new life into the platform and community. Just as ExpressionEngine had finally been made open-source — something that should have happened a long time ago — and had reinvigorated it and us. Just as it was finally morning in CMS Land, I was sure everything would regress into CMS-related depression :)
I had just created Greycells.net myself, with no ads or sponsorships, and despite some personal constraints, because I love ExpressionEngine and our community. I needed to give something back, to help in some way. And, most importantly, to show as many potential users as possible that ExpressionEngine really is the best CMS ever.
And, I admit it, I had equated open source with free forever. Something I know very well isn’t the case, and it shouldn’t be. But still, I had the gall to feel a sting of betrayal. All without knowing anything about what Tom and the team had been working on. Or what they intended Pro to be.
Well, I was wrong! I was very wrong. And it just goes to show, you should never judge people or their intentions until you have all the facts.
Because as you have seen above, the core ExpressionEngine will remain free and open source. Nothing has been taken away to create Pro. Nothing is crippled. Instead, a ton of great features and updates have been added, making Pro essential for those who need what it offers.
I think Pro is worth every penny, and I love that there is a monthly option and not just an annual payment. That means a lot to us who are not an agency that can bill a client :)
The path the team has taken with Pro is excellent.
And for what it’s worth, I apologize for not having more faith in you. Thank god I never voiced my conspiracy theories in public. QAnon is already poisoning enough minds — we did not need an EEAnon spreading through our community ;-)
Links to the EEConf 2021 Fall sessions
- Presentation of EE 6.1/Pro: If you want to see Tom Jaeger’s presentation of ExpressionEngine 6.1 and Pro from EEconf 2021, and you really should, you can on YouTube here. That link skips you forward to 22:25, past some setup and housekeeping, to where Tom begins the presentation. If you want to watch everything, click this link instead.
- Q & A with Tom Jaeger: This is the questions part of the presentation, which you can find at 1:02:00 or here.
- Testing EE and Add-ons with Cypress: YouTube Link
- Digital Accessibility - How to demonstrate its value and get buy-in from clients: YouTube Link
- Three things agencies need to know about their client’s online privacy: YouTube Link
- Implementing ExpressionEngine Pro: YouTube Link
- ExpressionEngine Team Round Table and Open Discussion: YouTube Link
- Google Ads Demystified: A Conversation about Search Engine Marketing: YouTube Link
Updates to this article
As we start using ExpressionEngine 6.1/Pro, we will add to and clarify the information in this article. Below are the sections that may have changed since you first read it.
- Price and Availability: Updated the price with the current $50 rebate. [2021-10-09]
- Front-end Editing: Expanded the information and philosophy behind front-end editing a lot. [2021-10-09]
- Clarified how “bringing the control panel to the front-end” actually works. Hint: It’s very cool :) [2021-10-09]