We’re proud to announce the first major release for the Common Web Platform since its inception in 2013: CWP Version 2.0.
With this release, CWP takes advantage of the latest and greatest features from SilverStripe 4(external link), which you can read about on the silverstripe.org blog(external link). CWP 2.0 also helps to simplify the maintenance of your code dependencies with a more refined approach to recipes.
Upgrade to CWP 2.0, visit the developer docs.
Major points to note in this release:
A more refined recipe construction
New paradigms of content creation with Content Blocks
Changes to the supported modules line-up for better usability
Recipes are not a new concept to the Common Web Platform. In CWP 1, we provided a small number of meta packages which bundled the product into an easily installable kit. This was most commonly called the CWP Basic Recipe, which included almost all of the functionality CWP had to offer.
With CWP 2, we have moved away from this monolithic packaging concept and towards a more granular approach. This allows developers to selectively add bundles of functionality more appropriate to a site’s needs. This reduces the site’s code base, in turn alleviating maintenance and upgrade burden.
Recipe functionality is grouped by considering the complementary feature sets of our supported modules and the common use cases they can solve when bundled together. These new functionally focused recipes can be combined in any manner, from search and blog functionality, to form builders and content blocks, or a combination of any of the above.
If you would prefer to start your next project with nearly everything CWP has on offer, we still offer the CWP Installer package(external link) which bundles nearly all the CWP 2.0 recipes (as it did with CWP 1), and even includes a base theme to kickstart development.
What's old is new again
To reach this magnificent milestone for the Common Web Platform, we've gone through our list of maintained modules and updated most of them for SilverStripe 4 compatibility. As mentioned earlier, we have also taken the time to form the supported modules into logical groups. All the same functionality can be expected from the supported modules, although sometimes delivered in slightly different ways.
Recipes & functionality provided
CWP Core - The very minimum that makes up the CWP. This can be used for sites that don't require much from the CMS.
CWP CMS - All the base functionality that everyone has come to know as the SilverStripe Content Management System, as provided with CWP.
CWP Search - All the functionality to implement a well performing search feature on your site.
Blog - As it says, along with all the bells and whistles to go with it (such as archive widgets).
Authoring Tools - Nifty tools to help content editors achieve their goals more efficiently, such as the ability to spellcheck, or classify pages.
Collaboration - Useful for frequently updated sites, such as the ability to review or request approval to alter content.
Reporting Tools - Provides a series of reports for administrators to help guide their content teams.
Form Building - Gives authors the ability to construct and alter online forms from the CMS.
Services - For sites that wish to be a source of content for other online systems.
Content Blocks - An amazing new paradigm for updating and maintaining content!
The Common Web Platform 2.0 comes with two themes that help government agencies get their sites up and running quickly.
The CWP Starter theme(external link) is a developer focused highly accessible(external link) Bootstrap 3 theme the is suited for sites that require more customisation and design. The theme can be applied with minimal restrictions, and is intended more as a starting point for customisation in order to speed up development.
The Wātea theme(external link) on the other hand includes more design elements than the CWP Starter theme and so is more fully featured as a quick 'up and running' option, particularly suited to short term campaign sites. The Wātea theme currently powers https://cwp.govt.nz/(external link), if you'd like to check it out. Wātea is well suited for smaller agencies with smaller sites, smaller budgets and smaller developer teams.
What's new is better
Some supported modules from CWP 1 were chosen not to be upgraded due to their functionality now being provided in a new manner; either by the new SilverStripe 4 version of the core CMS, or by another module that we think simply does it better.
Some examples of modules that were not upgraded because SilverStripe 4 supports this functionality itself include Secure Assets, Versioned Files, and the Select Upload Field. These new SilverStripe 4 features in turn have seen a pause in the upgrade work of the DMS module, as there are wider questions(external link) around what benefits it adds over the new functionality. Other modules have their functionality already provided in another way, such examples include LDAP integration (was in the Active Directory module), and the Orderable Rows functionality for rearranging relationship lists in the CMS (was provided by the Sortable Rows module).
Some functionality is excitingly new and deserves special mention.
Content Blocks through the “Elemental” module
The Elemental module(external link) addresses a common pain point for content authors; how can we break up the flow of content into more maintainable, and perhaps more importantly, rearrangeable blocks? With this new version of CWP we've brought a great module from the wider community into commercial support to address this challenge, Elemental, which marks an important fundamental shift away from managing content in a single editor field.
Elemental has a long history in the SilverStripe ecosystem, having been well refined by DNA Design to provide an easy-to-use and unified approach towards a composable page construction from a range of smaller elements.
Those new to the content block concept, and who have struggled with how to manage increasingly sophisticated content designs, will be elated by this addition to CWP. For a more detailed explanation on what this means and the functionality it provides, you can read Lead UX Designer, Paul Clarke's blog post(external link).
This is a great new direction for content editing in the CMS and we are excited to see how the community implements and extends the concepts to help editors increase their productivity and remove the barriers to ambitious layout goals. This new functionality is opt-in (via a recipe) - talk to your development teams for a demonstration of what is possible.
Translations for a website take a lot of work. The old Translatable module was good, but also created more work in the manner of which it provided this functionality. There was a large burden on content teams to ensure that consistency was met between two almost completely separate versions of the website.
Fluent(external link) works to address this by providing multi-language translation, without having to manage separate site trees. As an added bonus, an agency can even localise within the same language - by using a language's core pages, and localising only those that require it.
As mentioned earlier, the CWP product team has created an automated task to aid migrations from Translatable to Fluent(external link). More information can be found around this module change in SilverStripe’s blog post(external link) on how they are approaching multi language and localisation support with Fluent.
Major release; Major upgrade?
This all sounds wonderful, but how can you get your agency onto this new product version? If you're starting a new project, this is the current stable release and can be used right now. The platform is prepared for it, just be sure to let the CWP helpdesk know you want to use CWP 2.0 (in order to support different versions there are a few small configuration tweaks to perform to support an upgrade).
If your agency has an existing site it wishes to have upgraded, then this will require some development time. As with any new major version release, there should be a team on hand to oversee that everything goes smoothly. Now is the time to discuss with your development team/ web agency about the process. We’ve made every effort to make the upgrade of standard websites straightforward and there is a lot of help and support documentation around to guide and expedite the process.
As with most major releases, this is the time for out with the old and in with the new. New changes include exciting new features, and some other new changes remove old superseded modules. Although this update is not compulsory, it is highly recommended.
There are exciting changes happening in the CWP space, and if you are considering upgrading to CWP 2.0 read our previous post about upgrading, or have a chat with the one of the vendors from the Web Services Panel(external link).