If you are not going to release this as opensource, then I suggest you to use a layout system for the catalogue pages.
I'll explain it better:
If someone wants to have a different frontpage, and he has not access to the source code, then it would be useful to edit it via MySQL.
In one of my latest projects, I added another column in the catalogue table, and used that for this purpose.
For example, in some rows there could have been something like that:
Code:
{L}[2]{T}[2]{"Page Name"}
Every single string closed between the parenthesis represents something:
"L" is the page layout
"T" is the teaser etc
It's a sort of serializable string which represents the structure of the page, and you can use to build message (and at the sime time, it can be easily edited)...
Hope you've understand ;)
If not, let me know xD