Upgrading to SilverStripe 4

With SilverStripe 3 reaching the end of its support from the community, now is the time to upgrade to the latest version.

As SilverStripe 4 is now the focus - and is currently in active development with full support - it means new features, bug fixes and security patches will be produced primarily for this latest version of the CMS. Continuing to use an older version of SilverStripe could leave you open to security threats.

As the community focuses on SilverStripe 4, less add-ons or modules are created that support SilverStripe 3, making it harder to get the functionality that you need from your website. It also becomes more expensive to upgrade the longer you leave it - a bigger jump in versions will result in more work being required to bring your website up to date.

CMS Support Timeline

Content Editing Easier

SilverStripe 4 introduces new features that make it a lot easier for content administrators to manage page content and changes. A focus has been put on making the content editing experience easier - the usability of the CMS has improved, it’s quicker to load, and is now also fully responsive for on-the-go editing on mobile devices.  

These changes aren’t found in SilverStripe 3, so they alone are a significant reason to upgrade.

Campaigns

One of these new features is called Campaigns, and it allows you to publish a whole section of content at once; pages, images, files and links between all of them.

As you create content, instead of publishing immediately, you can add it to a collection known as a Campaign. This allows you to group all of these changes together, and publish all at once. No more having to click through all the different content and quickly publishing it, hoping you got it all.

demo2.silverstripe.org admin campaigns

Campaigns can also be used to group content together, to make it easier for multiple content authors to see and work on the content they might need to update.

Content Blocks

Page content has always been one big rich-text ‘Content’ field in the CMS. Many agencies, ourselves included, provided tailor-made block-by-block page building solutions, commonly referred to as content blocks. These were fairly custom for each website, and there was no set standard on how to do these.

This all changes with SilverStripe 4. Based on the Elemental Content Blocks Module, the CMS now ships with built-in support for building much richer pages with more dynamic layouts.

content blocks

Gone are the days of trying desperately to get the page to look how you want by placing things into tables, or getting your development team to build custom page types for every different layout style. You now simply add blocks to the page and specify how the page should be structured for limitless possibilities.

Content blocks can be reused across multiple pages as well. Build it once, use it multiple times.

And if you’re still needing something a bit custom, custom content blocks can easily be added to suit your requirements.

 

Improved Performance

Along with the added features the SilverStripe 4 brings, one you may not notice straight away is the improved performance. With the jump to the latest version of PHP, the server-side programming language used by SilverStripe, navigating around the CMS and your websites will just feel snappier. This is because SilverStripe now takes advantages of features of PHP like namespaces and the in-built PHP 7 speed improvements to help your websites load a lot quicker.

In fact, PHP 7 boasts an impressive up-to 200% performance increase over PHP 5.6 in benchmarks. This means your visitors can spend less time waiting for the page to generate, and more time reading and navigating your website.

Furthermore, the version of server-side programming language PHP most commonly used with SilverStripe 3.x, PHP 5.6, reached end-of-life support in December 2018.

 

What’s involved in upgrading to SilverStripe 4?

The process, while not completely automated, largely depends on the complexity of your website. A number of set tasks are usually completed, including updating the structure of your code to be namespaced, and file structures updated to reflect this. Files and assets are migrated across, and all of your content is maintained. For website administrators and content authors, the process should be fairly seamless.

While all new projects we build at Somar are now in SilverStripe 4, we have also undertaken many upgrades from SilverStripe 3 to 4.

For these upgrades, we always start with a migration audit. This outlines the steps and time required for each part of the upgrade. Added complexity is introduced with code that has been added unique to your website (things like custom page types or additional functionality), so special care is taken here to ensure that these are upgraded and continue to work as expected. Our relationship to the open-source community means that we’re able to help upgrade any third-party modules that your website might use that haven’t yet made the jump to support SilverStripe 4.

The end result - a faster, stable, and future-proofed content management system that will continue to deliver for your website users.