The CWP recipe codebase includes two modules that pre-configure your SilverStripe CMS website in order to operate correctly on the CWP infrastructure. Developers should be aware where these settings originate and what can or can't be customised to ensure websites function correctly on CWP.
The default SilverStripe CMS codebase used on the CWP infrastructure is referred to as the "CWP CMS recipe".
When starting a new CWP project based on the
cwp/cwp-installer custom SilverStripe CMS installer for CWP, a
selection of pre-configured modules are included (we've done the work for you as you would usually have to configure
these modules yourself) and provide a set of standardised features for Government agencies. Some of this
configuration is mandatory in order for your website to operate correctly on the CWP servers, while others
are able to be altered depending on your project needs.
Modules and configuration are added on the top of the SilverStripe CMS core through the use of the Composer
PHP package management tool. By including the
cwp/cwp-recipe-cms module in your projects
file, the modules that make up the "recipe" are then added to the project.
This includes two CWP specific modules and some default SilverStripe CMS project code (in the
that use the Configuration API
and PHP code to manage the majority of the CWP pre-configuration:
- cwp/cwp-core (*mandatory, must be included) - Pre-configures Solr configuration and indexing, logging, environment checks and other shared service configuration.
- cwp/cwp (*optional, but recommended) - Includes many of the custom features for CWP (new page types etc) and pre-configures search results (optional boosting and synonyms) and several recipe included modules.
- mysite/_config/config.yml (*mandatory, but part of your project and customisable) - The
cwp/cwp-installerincludes some pre-configured options that you may customise (the defaults will work with CWP out of the box).
- mysite/_config/blog.yml (*optional, if using blogging feature on CWP) - Pre-configures a set of blogging features when using the optional "blogging recipe" (see Blogging developer docs).