A collection of material on what you need to do to prepare your existing projects and plan new projects for Craft CMS 5.
Craft CMS version 5 is now available and ready for you to use.
The new version Craft CMS features an improved user interface to enhance the content creation process, including element cards and inline editing. It introduces enhancements in content modeling, such as Matrix in Matrix and decoupled entry types, as well as support for longform content through an updated CKEditor plugin.
Additionally, the update will include administrative and development upgrades like lazy eager-loading and support for PHP 8.2, along with security improvements such as two-factor authentication and passkeys.
And that’s not even everything!
Here are some details on the most important new features and changes with links to helpful videos and articles:
Overall, the Craft CMS control panel received a minor facelift that includes a more subtle sidebar that is toggle-able, new icons, tweaked layout, increased use of slideout components for editing elements and settings, and several accessibility improvements.
The control panel changes aren’t significant enough that they’ll confuse your content authors but it does look different!
🎥 Craft 5 Control Panel Tour
🎥 Make Craft 5 Control Panel Sidebar Default to Collapsed
In versions prior to Craft 5, Matrix was its own separate element type. With the move of Matrix Blocks to entries (aka entrification), here’s how it’ll unfold:
This change tees up a few other significant changes in Craft 5. Read on to find out!
One of the side effects of making Matrix blocks entries and Matrix block types entry types in Craft 5, is that it the possibility of Matrx-in-Matrix is now very real.
While we don’t want to tempt fate by doing too many nested matrix fields and potentially starting a series of international events that would lower the DEFCON to 1 and cause well-dressed individuals in sunglasses and ear pieces to show up our door…
But we do want to do matrix-in-matrix. And, with the new support for partials rendering in Craft 5, we don’t even have to break a sweat writing the Twig template code.
What do we get when add together the updated first-party CKEditor plugin, the entrification of Matrix block, and the rendering of partial templates?
Flexible longform content creation that allows you to embed other entries right inside of the rich text editor. And, in a many cases, you can stop using Matrix for building simpler content/page builders and use CKEditor instead.
🎥 Longform Content Editor with CKEditor
In Craft 5, we can now customize how the entries look on the element index page. Before Craft 5, we could customize the entries listing by adding and removing columns, but we had no way to organize the content view other than the table view of rows and columns.
The new view is a card view that allows for customization of entry content shown on the card.
Here’s something I created while rebuilding the TrailQuest project that is part of my Real World Craft CMS course:
Element indexes now have the ability to handle inline editing for some first-party fields and third-party fields that impmement the InlineEditableFieldInterface
.
This is helpful for quick edits to element content without clicking into each element to make the change.
There are two important account security changes in Craft CMS 5 that will make user authentication more inline with best practices for web applications.
The two new additions to Craft 5 are:
🎥 2FA and Passkey in Craft CMS 5
📄 2FA and Passkey Support in Craft CMS 5
Craft 5 adds a “Max Authors” field to section settings, so you can allow more than one author per entry. This setting defaults to one, which is the standard behavior prior to Craft 5, but can be adjusted upward as needed.
Authors are selected in the entry form sidebar using the familiar relationship selection UI.
🎥 Multiple Authors Per Entry
Craft 5.0.0 stable was released on March 26, 2024. You can now use it for new projects or to update existing projects.
Craft 5 will require the following:
See the Craft CMS requirements for more information on dependencies or use the official server check script to check your server’s compatibility.
Also, check out:
📄 Config Changes in Craft CMS 5
Determining whether to update to Craft 5 hinges on the specific needs of your project, your company or client, and the current development status of your project.
Craft 5 introduces significant enhancements in content authorship and a comprehensive reorganization of how content is stored in the database. This transition may present more challenges than the upgrade from Craft 3 to Craft 4, particularly for projects utilizing complex “page builders” or “content builders” with Matrix fields.
In Craft 5, all Matrix field blocks will transform into entries, and Matrix block types will become Craft entry types. Additionally, fields within Matrix blocks will be converted to global fields, necessitating a thorough review and possible consolidation of fields.
Ultimately, the decision to upgrade depends on your project’s unique requirements. If you are uncertain if your project should be updated to Craft 5 or you are looking for a team to do, please get in touch.
Every plugin you use in your projects will need an update to make it compatible with Craft 5. Your ability to update a project to Craft CMS 5 will depend on a on a required plugin’s support of Craft 5.
The Craft Plugin Store does have a listing of plugins available for Craft 5, including CraftQuest’s Buggy plugin for learning Xdebug with our Xdebug course!
If you’re already familiar with Craft, then I recommend watching my series of videos covering the most important features of Craft 5.
But if you’re new to Craft, then your first stop should be the Craft CMS 5 Quick-Start Guide.