You wouldn't need to display the different themes in the contract itself. You would make your website communicate with the smart contract and then payments come in. Better explained here:
https://gist.github.com/Zuchos/082b37c687c38f13a5d15e8f88579d00It's basically a small ''tutorial'' on how to do what you are basically asking for.