One simple solution that might meet your needs would be to add the published year of the current post or page to your body using body_class(), and then add the appropriate styles for each year to your stylesheet.
Here I add a new css class to the html <body>
element like “.year-2016” using get_the_date()
to fill in the year. Note that you should always use body_class() in your body tag:
<body <?php body_class( 'year-' . get_the_date('Y') ); ?>>
I suspect this will be too simple and broad a stroke, and you will want to conditionally add this css class to your body only if it is a page or a single post the user is viewing, for example. Otherwise just load the body tag normally:
<?php if( is_page() || ( is_post() && is_single() ) ) { ?>
<body <?php body_class( 'year-' . get_the_date('Y') ); ?>>
<?php } else { ?>
<body <?php body_class(); ?> >
<?php } ?>
Then in your main stylesheet you could style any menu’s and other elements for posts and pages published in 2016. For example your main menu could have a different background color:
.year-2016 .main-menu {
background: #0cf;
}
This method would be very dynamic, and requires little additional coding to implement the new CSS for your different year themes.