Are you prepared for Craft CMS 4.0?
Craft CMS 4.0 is scheduled for release on 4 May 2022. Here we summarise some of the changes, and the reasons you should prepare.
Craft CMS 4.0 (publishing solution) is not groundbreaking, but it brings quite a few major upgrades. Not least in the underlying codebase and efficiency. Fortunately the transition from 3 to 4 is less extensive than from 2 to 3, when large parts of the CMS's core code were updated. Nevertheless, it is important to prepare properly and make sure you keep up as changes happen!
Publishing flow in Craft CMS
Speed. Creating drafts and revisions is now significantly faster, especially for multi-site installations and complex content models.
Conditional fields. Field layout elements and tabs can now be configured to only be visible/editable when certain conditions are met, based on the element being edited and the logged-in user.
New element editing slideouts. Element editing slideouts now support provisional drafts and automatic saving, just like entry edit pages.
User management in Craft CMS
Addresses. Users can now manage addresses, which can be referenced by plugins like Craft Commerce.
Inactive users. It is now possible to manage users representing a person or entity who don't actually have login credentials.
Images in Craft CMS
Easier focal point adjustments. It is now possible to edit images' focal points from their preview modes, in addition to the image editor.
Alternative text. Volume field layouts can now include a built-in "Alternative Text" field, used to define alt attributes on system-generated tags, via Asset::getImg() and images rendered in the control panel.
Development in Craft CMS
PHP 8. Craft CMS now requires PHP 8, allowing developers to safely take advantage of several new language features.
Laravel Collections. Laravel Collections are now built into Craft CMS, providing new ways to simplify Twig and PHP code.
How do you find out which version of Craft CMS you are on?
Perhaps you are curious which version you have? You can find out by logging into the solution and looking at the very bottom of the publishing window. There, under Pro/Solo, you should see a version number. For example "Craft CMS 3.7.21". If you are on something older than Craft CMS 3.7, you should contact your developers and make sure you don't fall too far behind. The importance of staying updated concerns security, speed and usability, and not least avoiding the added cost and risk you take on by postponing it. It builds so-called "technical debt", and makes further development considerably more expensive and difficult. The further behind you fall, the more work "piles up".
Craft Commerce 4
Condition builders. Discounts, shipping zones and tax zones now have condition builders, enabling much more flexible matching based on the order, the user or the address.
Bulk coupon code generation. It is now possible to generate coupon codes in bulk, based on custom formats such as CRAFT4-####.
Upgrade requirements in Craft Commerce
Craft CMS 4 will require you to start from 3.7.11+, which means that if your version of Craft CMS is older than this, you or your developers should prepare by updating to at least this version.
Craft CMS 4 requires at least PHP 8.0 and MySQL 5.7.8 (or MariaDB 10.2.7). This is a good thing! If your website is not on PHP 8 already, it should be updated regardless of Craft CMS 4 or not. Older versions of PHP are approaching the end of even essential security updates.
How Vasser prepares for Craft CMS 4
We are actively working on updating all our clients' web solutions to the latest version, and fixing all deprecation errors.
All our clients with active service agreements will be on Craft CMS 4 as soon as it proves stable. We usually wait a couple of weeks to best ensure there are no bugs in the transition.
Help. My Craft CMS solution is severely outdated?!
Take it easy. It is never too late to act, but we strongly recommend doing so before problems arise rather than waiting for misfortune to strike. Feel free to contact us to hear our suggested solutions, and possibly a no-obligation quote for an update. :-)