Since you are likely developing this and you don’t have any posts associated with the season
taxonomy, you will not get any terms returned with get_terms('season');' unless you specify the parameter
hide_emptyto be
0`. I would change the code thusly:
/** Seasons */
$args = array( 'hide_empty' => '0' );
$season_terms = get_terms('season', $args);
$season_tax = array();
if( $season_terms ) {
foreach( $season_terms as $season ) {
$season_tax[$season->term_id] = $season->name;
}
}
array_unshift( $season_tax, 'Choose a Season' );
By default, terms are only returned if they are associated with at least one post. Check out the hide_empty
parameter on this page for more information: http://codex.wordpress.org/Function_Reference/get_terms