[Skip to content]  [Text only]  [Accessibility]  [Sitemap]

SF Logo (home page link) phpSiteFramework

You are:  Home :: About

Creative Commons License



What is phpSiteFramework?

phpSiteFramework (SF) is a server-side PHP-based web presentation framework designed to separate web content from the surrounding site style and functionality.

It is not a content management system; it can deal with pretty well everything on the 'delivery side' of content but provides nothing in the way of 'authoring' or 'content management' tools.

In its simplest sense you configure 'header', 'footer' and 'style' (CSS) files and SF takes care of 'wrapping' your content in your standard files.

In a functional sense you provide some simple configuration data and SF can provide:

  • navigation menus

  • 'breadcrumb' lines

  • a sitemap,

  • transforms for things like print or text-only page views,
  • miscellaneous other functions like page titles, page modification dates etc.

In a technical sense SF can provide:

  • quite flexible configuration options

  • 'in-page' command processing

  • configurable page caching (requires Cache-Lite)


SF was created at the Fitzwilliam Museum to fulfil a specific need.

The main requirements were identified as:

  • provide a light-weight (performance efficient) framework,

  • remove the need for content authors to worry about site functionality (i.e provide it in the framework),

  • provide a framework which can help standardise the look and feel of a site but in itself does not impose design limitations,

  • provide a framework which is very configurable and extensible,

  • provide a framework which makes it possible to meet accessibility, web and other standards.


SF is my specific implementation of the ideas Dave Gunn and I have been pondering over the last little while (October 2005).

SF's achitecture is not unique of course, and here I draw attention to some other systems which have provided 'bits of inspiration'.

  • pureContent. pureContent is Martin Lucas-Smith's PHP-based presentation system notable for drawing our attention to the php auto-prepend/append directives.

  • Plone. Plone is a true content management system. After some assessment it became clear it was too 'heavy' for our needs. The system does 'show the way' though in a number of areas including its technical architecture and user interface. It is also instructive to observe other aspects including: how accessibility features are implemented and its use of CSS.

  • John Lim's HOWTO article on Optimising PHP . Which, apart from being useful generally, pointed me in the general direction of the PEAR PHP caching package Cache-Lite which has been implemented in SF since V1.2.

  • Fabien Marty for providing SF with caching functionality through his Cache-Lite package which 'just worked' for me.

The Fitzwilliam Museum, University of Cambridge.

phpSiteFramework powered