I would create a Theme Option for Color Scheme, then split out the color-scheme-specific CSS declarations into separate CSS files (e.g. blue.css
, green.css
, red.css
, etc.).
Then, you simply enqueue the appropriate color-schme stylesheet, based on the Theme Option.
e.g.:
function mytheme_enqueue_color_scheme_stylesheet() {
$theme_options = get_option( 'theme_mytheme_options' );
$colorscheme = $theme_options['color_scheme'];
$stylesheet = $colorscheme . '.css';
$stylesheetsrc = get_template_directory_uri() . '/css/' . $stylesheet;
wp_enqueue_style( 'colorscheme', $stylesheetsrc );
}
add_action( 'wp_enqueue_scripts', 'mytheme_enqueue_color_scheme_stylesheet' );