We were approached to develop a new site for an existing client who wanted to showcase their services specific to the wedding planning industry.
The requirements were straightforward and simple. The copy created during the design process would not change, nor would they need to create dynamic content going forward. Most important, the site would have a very short design and development life cycle. The site would feature a showcase gallery and it would be a cornerstone piece; the client wanted it to be “flashy” and “interactive”.
So, do we make a static html site? Do we use a blog engine type platform like Wordpress or Movable Type and create a custom template for it? We have worked with the client before and they have no shortage of new ideas for their sites, so we also try to anticipate future needs and requests, so we have to be certain that whatever approach we implement, it must be flexible and scalable to accommodate new features six months from now. That said, that eliminates the static html site.
The other alternative is to use a rapid application deployment framework, like Ruby on Rails or Symfony or cakePHP. Since we are still in the research stages of evaluating RoR, that left Symfony and cakePHP. Symfony just has too much overhead to deal with…and the winner is cakePHP. We have had great success with cakePHP and it’s pretty straightforward. We also need a framework that truly separated the presentation layer from the application layer. Often, we find that the client is constantly asking to change design elements of the site during the site build and pre-launch. This can easily be accomodated with cakePHP. A designer can get in there and modify the design without risk of breaking code.
But why not Wordpress? We’ve done it before and it’s worked just fine. The time to crank out a Wordpress theme (with valid XHTML code in hand) is about 40 hours. This includes mapping the site information architecture to the Wordpress lexicon (posts, pages). Remember, Wordpress is NOT a true CMS. The level of effort is certainly worth it if people can comment on articles, or you’re actually going to use some aspect of it as a blog. We had no intention of ever doing that.
What we needed was a lightweight framework, and that’s where CakePHP comes in. Much of our data is stored in a simple page configuration table. There is no expectation from the client to have an admin backend, so using phpMyAdmin to shovel in data is perfectly acceptable and fast. Unlike a traditional static html site, we get an application cache (enabled cached views), an underlying database with connectivity already in place for future projects/features, and a quick deployment scheme in place. Additionally, we use the routing mechanism in CakePHP to produce search engine friendly urls.
Without further adieu:
EIM Weddings
Recent Comments