Open Source CMS

Plone LogoA Content Management System (CMS) provides an interface which makes websites easier to manage, thus allowing non-tech-savvy staff to easily add or change site content. An open source solution is one which not only distributes the programming source code and allows for free redistribution of it, but also includes this criteria as well. If that is confusing, then we’ll stay with the basic premise of equating open source to “free” and “access to the source code.” In the world of education, this means there was a low cost for entry (no cost; free) and we can customize and tailor the application to best fit our needs – try doing that with proprietary applications or seeing what it might cost you to have “them” do it.

Plone is an open source CMS I have been working with since March 2007. With 8 district sites, I was looking for a solution that would allow for easy editing and uploading of information. As such, Plone is great at helping to build a website as the content is added and has an identification system that will only allow certain users to alter certain parts of a page. These permissions are created by the site administrator and can also be changed or altered as needed. Plone also can be connected with our existing Novell structure (eDirectory server via LDAP and Groupwise email program), so we won’t need to create new accounts (and staff won’t have to remember a new login). Staff members gain authorization through our network (using the same username and password as they’re accustomed to using to login to the network) and have personalized information and folders from which to create and manage content.

Another benefit to Plone is the use of “smart folders” – a kind of “super smart” mini search. Every object on a page can have a keyword assigned to it; the smart folder automatically goes out and finds all the items that have a particular keyword and returns them as content in that smart folder (even if they are stored elsewhere). For instance, let’s say that the District website has a list of all faculty currently employed. The high school art department would also like to display a list of faculty on the art web page, but they want to show only Art faculty. Art would create a smart folder to look for faculty members that are part of the art department. In other words, we don’t have to recreate these members; the smart folder uses the terms we gave it (i.e., something like high school art teacher) and displays the results on the page. Information is entered once, but can be replicated in numerous ways this way – just as long as the “meta-data” or key words and descriptions are included for the content on its initial entry into the system. Make sense?

There are multiple benefits to this type of system. First, as the District website updates its information, the art department’s information will also automatically change. Second, the actual concrete information is only stored once, therefore reducing the amount of information in general stored on campus servers. Plone is also great at managing content in relation to time. When adding content, an effective date can be set as well as an expiration date. This allows users to set up certain messages ahead of time, only have them available for X amount of days, and then be replaced by new information. It can make it appear as though a web page is updated much more often than it actually is. Lastly, Plone allows changes to be immediate. There is no need to learn sophisticated coding as the content can just be added by typing it in, selecting the type of information you are entering (normal text, heading, subheading, etc.) or adding bullets and numbering. Click Save and your content is instantly changed. Of course this feature is also customizable, the change does not have to be immediate. If you would prefer your content be approved by a certain person (Principal, Tech Coordinator, Web Coordinator, and/or Community Relations Director) before it is posted, those options are available as well.

Remember, I did say this was “free.” Plone is built on top of the Zope application server which is written in Python. All of that sound foreign to you? Although Plone’s documentation is scattered about its site and the general Internet, it has a great online community for support. There are also training and conference opportunities throughout the year (and not just in the United States either). I would suggest attending a Plone Bootcamp (week long intensive course and hands on) as well as downloading the latest version from the Plone site to evaluate for yourself. So far, Plone has met our district’s needs. Now only if there was an easy way of upgrading between versions…