Open Source Content Management Framework

A new website for TWS

Introduction


The Wilderness Society is one of the largest community based Environmental groups in Australia. We have 10 offices around the country and our website has become a very important tool for communicating with our membership and volunteers with about 16,000 unique visitors every month. The website was originally built 5 years ago with a proprietary Perl based CMS that had been kindly donated for our use. However, as the website grew in complexity and size it become apparent that the current CMS was limiting the potential of the website. As it was not very user friendly, all changes to the site had to be carried out by the 3 web staff in the organisation, with campaigners either calling or mailing material through to them.

With limited financial resources, eager volunteers and one skilled web developer on staff, Open Source CMS's appeared much more attractive than purchasing a proprietary CMS. We began our evaluation by going through cmsinfo.org and trying to get an idea of what was out there. Our evaluation turned into quite a large project which we tried to document in order to help other groups like ourselves. You can read this documentation here.

After evaluating 14 different CMS's we had narrowed it down to 3, Plone, EzPublish 3 and Midgard, that appeared to meet most of the criteria we had set for a CMS. EzPublish 3 looked promising but was still in beta stage at that time. Plone was very impressive but our programming guru had lots of experience in PHP and none in python, so we felt that would limit our ability to customise the system. Midgard had been quite painful to install and the initial Admin interface that we looked at, Asgard, didn't appear very user friendly. However with with the discovery of Aegir we had a user friendly interface with a lot of features, including a WYSIWYG editor, and the features that had initially attracted us to Midgard, clean urls, speed, flexibility, a proven track record and a committed, open developer community.

Implementation


The process of converting our old site into our new website, took about 5 months, with James our developer focussing on our getting his head around midgard and creating a interface for our campaigners to edit the site, myself looking at hosting options and setting up the server and associated infrastructure and Evan our web manager coming in over the last couple of months to shift the content from the old site to the new.

The basic structure of the new site is along the lines of the old in that content is organised based on regions and campaigns. Our campaigners have been placed in various groups depending on the campaigns and regions that they are associated with. We have a staging and a live site set up, the live site is www.wilderness.org.au and is on port 80 while the staging site is admin.wilderness.org.au on port 443. Changes are made only to the staging site and once they have passed through the approval process are automatically copied to the live site.

All content on the live site is served via Squid, which means that once a page is requested Squid stores it in its cache as a html page.Then if it is re-requested Squid will check to see if the page has been updated and if not, will serve the page from the cache. As a lot of the content on our site changes infrequently this offers large performance benefits as it dramatically reduces the number of requests to the database. This allowed us to comfortably run our site on a virtual dedicated server rather than have have to pay more money for a dedicated server. For more detail on our caching solution see here.

The staging site requires authentication and once our campaigners log in they can then browse through the site and when they come to a page that they have edit permissions for, an "edit this page" link will appear. You can see a screen shot of how this appears here. When they click on this link the page is displayed in a custom built form which lets them easily edit the content, add photos or set other required fields for the article. You can see screenshots of this editorial form here and here. A request for approval then appears on our approvals page. This is checked by our webmanager, who will then approve the page after making any editing changes. The page will then be copied across to the live site using Repligard. After a little bit of training we have about 30 campaigners around the country now adding and maintaining the content that they are responsible for.

Designed by Nemein, hosted by Kafit