in reply to pulling content from db - is it a good idea?
Well, I have done this before. Putting content into a database is not a bad idea (and as a bonus you can easily search the content of your website because all the hard work is done via database engine (I am assuming relational database))
Another alternative is to have a separate template directory where you put all contents (you fill the template using a module HTML::Template or any other templating solution). Templating clearly separates code from presentation so it is very handy when you need to change the overal appearance of the website
I personally use Templates with all the content that changes from page to page stored in a database