Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.


SilverStripe 2.3.0 released, 1000s of improvements!

Tagged release

Comments 13

by Sigurd Magnusson

Posted 23 February 2009

Read post


Screenshot of SilverStripe 2.3

SilverStripe v2.3.0 is now available to download! This release brings thousands of updates, and shows our continued effort in making SilverStripe's underlying codebase a tool for professional website developers and the CMS a user-friendly and efficient interface for non-technical content authors.


User Forms, Newsletter, OpenID no longer in core

Please note: Some features that used to be in the core package are in their own extension modules now. This is to ensure we can keep the core code leaner and more modular. It also means we can release upgrades to these modules without needing to issue a new version of the core product.

If you are upgrading to 2.3.0 and you currently use these features you must download and install these separately:

CMS interface improvements

New WYSIWYG editor toolbar in 2.3.0
  • WYSIWYG Editor upgraded to TinyMCE 3.2, improving speed, browser compatibility, extendability.
  • Editor toolbar now shown adjacent to the editor. This simplifies building editor extensions.
  • A styles drop-down is shown. It is populated with the names of CSS classes in your typography.css
  • When inserting images to the WYSIWYG editor, you can now conveniently search for files.
  • Inline spell checker.
  • HTML source code view uses Codepress to provide syntax highlighting, word wrap, more control.
  • Performance improvements. Optimisations in javascript mean faster loading and runtime speeds.
  • Design and layout polish to improve the interface in IE7, IE8, Chrome, FireFox 3, Safari 3 & 4.


ModelAdmin is a fast, effective, and powerful way to manage complex, large data sets with the SilverStripe CMS.

Screenshot of ModelAdmin

You should continue to use the site content area to manage your website pages, but you can now delegate ModelAdmin to manage long lists, such as thousands of press releases, articles, or in the case of, all of our showcase sites. It also has great support for managing relationships between data, such as 'people' and 'articles they've contributed to your website.

When you link objects in PHP to ModelAdmin, a rich interface automatically builds around it, including an advanced search system, web forms to add and edit the objects, CSV import/export, and relationships with other objects. The result is a web-based application, full of (jQuery) AJAX to make managing information efficient and intuitive.

Where ModelAdmin's defaults don't match your needs, you can customise the behaviour by writing code extensions (as PHP sub-classes.) This means you can build a fully customised and tightly-integrated CRM or business application.

Learn more:

APIs - because mashups and open data are the new black

Related to ModelAdmin is SilverStripe's new natural ability to expose its internal object-oriented data structure as a light-weight API. For example, if you use ModelAdmin to build a website showing public parks and places and allowed user-contributed data to rate them, then you would automatically be able to turn on APIs to let data be added, edited, deleted, and viewed.

A great example of this is already in practice for the New Zealand Government: See the SOAP and REST documentation for the State Services Commission's National Broadband Map.

For instance, demonstrates a REST API providing open government data in practice, as XML:

<DemandPoint href="">
<OrganisationTitle>Aspiring Beginnings Early Learning Centr</OrganisationTitle>
<Street>Warren Street</Street>
... ...

Better security settings for deciding who can view and edit pages on your site

You can choose multiple groups and assign them as viewers and editors, rather than just one:

Improved security system in 2.3.0


SilverStripe now includes the scalability features that powered the U.S. Democratic Party's convention site. With it supporting 3.2 billion hits in 96 hours, it's now yours for free. This code lets you cache static files to HTML in a configuration that bypasses MySQL, and contains only one line of PHP to provide further caching techniques (If-Modified-Since).

At the PHP-level, you specify zones of your website that can statically cache in this way, and the software does the rest for you, including re-caching files when content authors click 'Save & Publish' inside the CMS. See Static Publisher for technical information.

Transition to jQuery

Some months ago we made a decision to use jQuery for all new major javascript work in SilverStripe. It will be a number of releases before the transition is complete, however certain features such as ModelAdmin are now fully jQuery-powered. As this work progresses, it will continue to simplify achieving complex javascript work in both the CMS and front-end.

Microsoft IIS v7 Support

Windows Server IIS 7 logo

SilverStripe has become a whole lot easier to install on Windows servers. If you have IIS 7, the process for installing SilverStripe, including setting up friendly URLs, is now easier.

This will mean it's now a lot easier to run SilverStripe in production on Windows, which is incredibly convenient if you have an existing Microsoft-oriented website environment.

Installer Fixes

This release contains numerous fixes to make it easier to install SilverStripe on a wide variety of web server environments. Thank you to all those who have submitted detailed reports on why their installation failed so that we could make life easier for the next person!


One of SilverStripe's key features is to inspect your PHP code and build your database schema from it. As your PHP code changes, your database schema automatically keeps up with it, which is a fantastic saving grace when doing production deployment. There are three important changes:

  1. /db/build is renamed /dev/build for system consistency. This is the new URL you visit to have your database schema update to reflect your current PHP object model.
  2. /dev/build flushes the template of the current page, so you no longer need to add ?flush=1
  3. You can, however, flush all templates for your website with /dev/build?flush=all.
    Thanks to Mark Rickerby for adding this!

Warning about translatable content

If your site uses more than one language for public-facing page content, don’t upgrade to this release yet. We are part way through changing the architecture of how our multilingual content code works and this will be ready in a minor 2.3.x release soon.

(Please note that the ability for the CMS user interface to be in languages beside English is an entirely separate feature, and actually works better in this release. Go ahead and use that!)

Further reading

Future releases

We have a goal to offer more a structured release cycle in 2009, and have appointed Sibylle to be in charge of making this happen. Check out our updated roadmap to see what we're planning. Revisit it regularly and make comments on our plans; it is both a living document and something we want your feedback on!