Hi mahakmx,
That's a big question!
One way to do it would be to store all 'data', that is 'content', separately from the 'layout'. Using XML files for data and parsing them into HTML (by a variety of methods) seems to be the way things are going.
Alternatively, if the site is small , then just some simple 'switch' code (in PHP, ASP etc.) wouldn't be too hard to manage.
It all really depends on how sophisticated you need or want to make it.
How have you built your site up to now? Is it pure HTML or are you using PHP already?
Paul 🙂