Hola:
A partir de una base de datos, podrías tener una estructura fija en las páginas y el contenido (por ejemplo lo que hay dentro del body) en una tabla donde en principio solo exista un campo página con la url u otro valor discriminante para obtener el contenido de la base de datos...) y tal vez un id (no necesario, pero puedes usar más campos adicionales como fecha de modificación, contador de visitas...)
Ese contenido, si quieres facilitarle las cosas puedes añadirle BBCodes... Sobre el usuario, con un simple txt bastaría.
Saludos