CMS for web development
Wednesday, September 20th, 2006 9:32 am
For the web developers out there: Do you regularly use a CMS framework in your projects?
First a little background about me
I’ve been developing websites seriously for about 6 years. I’m self-taught and have no formal training. I started out by learning HTML and table layouts — no CSS, no <DIV>’s, etc.
Pretty soon I began hearing some talk about server-side scripting and became interested in JSP. I had a short period of formal “C” training in my past, so I caught on to the Java syntax and language structure very quickly. However, for most of my clients, JSP was not a practical solution.
I started to notice that something called “PHP” was included in most hosting plans, and after some investigation discovered that it was a “lightweight” server-side scripting engine without all the overhead and server configuration required for JSP. So I dove right in and before long abandoned JSP entirely.
Then about a year ago I finally discovered the wonders of CSS and table-less layouts. What a liberation!
So up until about a month ago, my design process has been as follows:
- design page layout using graphical design software.
- convert prototype image to valid HTML using CSS for layout.
- “PHP-ize” the layout so that the same HTML “template” can be applied to all pages of the site.
- develop some kind of back-end application to allow the client to manipulate site content.
The Present
That step 4 has always been a doosy for me. Every client is different and has different requirements. Unfortunately, it seemed that every project involved re-inventing the wheel to some degree. But basically, they all just want some sort of easy method to update and add content.
With a recent project, I decided to try something called Joomla, because the site itself was more or less news-centered and I thought it would be a good fit. I had tried phpNuke and phpBB in the past, but the template designs were so complex that I soon gave up. My first experience with Joomla was liberating. The template design was stupidly simple – just a single index.php file and a stylesheet. The site went up so fast, and porting content from their old site to the new “Joomla-enabled” site was so easy. I threw together a “Content Management and Administration” document for the client, and away they go.
The Future
So I start to think: what’s the drawback of this method of development? It seems like the CMS programs today have all of the flexibility to be able to deal with any kind of customization that might be required. All it takes is sometimes digging into the PHP code and making tweaks here or there. I suppose the overhead is a bit higher, as all of the content is stored in a database and response time is visibly slower at times and for some tasks (mileage may vary, depending on host). But the time and effort this saved me in designing the site, and the convenience of the client being able to make changes effortlessly more than makes up for it in my opinion.
Another benefit of this approach is that Step 3 virtually goes away as well. In the past I had to build back-end processors for building the pages and laying out the dynamic content, but all of that is included in the CMS. So the PHP-izing consists of simply plugging the CMS hooks into your template where you want the dynamic content to go. Piece of cake!
I think I’ve found my new best friend.
Discussion
If you use a CMS regularly, which one? What drawbacks to you see to this approach?
For the web developers out there: Do you regularly use a CMS framework in your projects?
First a little background about me
I’ve been developing websites seriously for about 6 years. I’m self-taught and have no formal training. I started out by learning HTML and table layouts — no CSS, no <DIV>’s, etc.
Pretty soon I began hearing some talk about server-side scripting and became interested in JSP. I had a short period of formal “C” training in my past, so I caught on to the Java syntax and language structure very quickly. However, for most of my clients, JSP was not a practical solution.
I started to notice that something called “PHP” was included in most hosting plans, and after some investigation discovered that it was a “lightweight” server-side scripting engine without all the overhead and server configuration required for JSP. So I dove right in and before long abandoned JSP entirely.
Then about a year ago I finally discovered the wonders of CSS and table-less layouts. What a liberation!
So up until about a month ago, my design process has been as follows:
- design page layout using graphical design software.
- convert prototype image to valid HTML using CSS for layout.
- “PHP-ize” the layout so that the same HTML “template” can be applied to all pages of the site.
- develop some kind of back-end application to allow the client to manipulate site content.
The Present
That step 4 has always been a doosy for me. Every client is different and has different requirements. Unfortunately, it seemed that every project involved re-inventing the wheel to some degree. But basically, they all just want some sort of easy method to update and add content.
With a recent project, I decided to try something called Joomla, because the site itself was more or less news-centered and I thought it would be a good fit. I had tried phpNuke and phpBB in the past, but the template designs were so complex that I soon gave up. My first experience with Joomla was liberating. The template design was stupidly simple – just a single index.php file and a stylesheet. The site went up so fast, and porting content from their old site to the new “Joomla-enabled” site was so easy. I threw together a “Content Management and Administration” document for the client, and away they go.
The Future
So I start to think: what’s the drawback of this method of development? It seems like the CMS programs today have all of the flexibility to be able to deal with any kind of customization that might be required. All it takes is sometimes digging into the PHP code and making tweaks here or there. I suppose the overhead is a bit higher, as all of the content is stored in a database and response time is visibly slower at times and for some tasks (mileage may vary, depending on host). But the time and effort this saved me in designing the site, and the convenience of the client being able to make changes effortlessly more than makes up for it in my opinion.
Another benefit of this approach is that Step 3 virtually goes away as well. In the past I had to build back-end processors for building the pages and laying out the dynamic content, but all of that is included in the CMS. So the PHP-izing consists of simply plugging the CMS hooks into your template where you want the dynamic content to go. Piece of cake!
I think I’ve found my new best friend.
Discussion
If you use a CMS regularly, which one? What drawbacks to you see to this approach?


"Pay no attention to that man behind the curtain."