Create a primary stylesheet and enqueue as normal. Then, make a series of conditional statements using WP core functions – is_home()
, is_404()
, is_page_template('template.php')
and so on. In each of those conditionals, enqueue the stylesheet you want that overwrites your core stylesheet, using your primary (style.css
) stylesheet as a dependency.
Untested code, but should work:
function my_styles() {
wp_deregister_style( 'header' );
wp_register_style( 'style', get_template_directory_uri() . '/css/style.css' );
wp_enqueue_style( 'style' );
if (is_home()) { wp_enqueue_style('homestyle', get_template_directory_uri(). '/css/homestyle.css', 'style'); }
}
add_action('wp_print_styles', 'my_styles');