add_section( 'oenology_' . $tab['name'], array( 'title' => 'Oenology ' . $tab['title'] . ' Settings', ) ); } // Add Settings foreach ( $option_parameters as $option_parameter ) { // Add $option_parameter setting $wp_customize->add_setting( 'theme_oenology_options[' . $option_parameter['name'] . ']', array( 'default' => $option_parameter['default'], 'type' => 'option', ) ); // Add $option_parameter control if ( 'text' == $option_parameter['type'] ) { $wp_customize->add_control( 'oenology_' . $option_parameter['name'], array( 'label' => $option_parameter['title'], 'section' => 'oenology_' . $option_parameter['tab'], 'settings' => 'theme_oenology_options['. $option_parameter['name'] . ']', 'type' => 'text', ) ); } else if ( 'checkbox' == $option_parameter['type'] ) { $wp_customize->add_control( 'oenology_' . $option_parameter['name'], array( 'label' => $option_parameter['title'], 'section' => 'oenology_' . $option_parameter['tab'], 'settings' => 'theme_oenology_options['. $option_parameter['name'] . ']', 'type' => 'checkbox', ) ); } else if ( 'radio' == $option_parameter['type'] ) { $valid_options = array(); foreach ( $option_parameter['valid_options'] as $valid_option ) { $valid_options[$valid_option['name']] = $valid_option['title']; } $wp_customize->add_control( 'oenology_' . $option_parameter['name'], array( 'label' => $option_parameter['title'], 'section' => 'oenology_' . $option_parameter['tab'], 'settings' => 'theme_oenology_options['. $option_parameter['name'] . ']', 'type' => 'radio', 'choices' => $valid_options, ) ); } else if ( 'select' == $option_parameter['type'] ) { $valid_options = array(); foreach ( $option_parameter['valid_options'] as $valid_option ) { $valid_options[$valid_option['name']] = $valid_option['title']; } $wp_customize->add_control( 'oenology_' . $option_parameter['name'], array( 'label' => $option_parameter['title'], 'section' => 'oenology_' . $option_parameter['tab'], 'settings' => 'theme_oenology_options['. $option_parameter['name'] . ']', 'type' => 'select', 'choices' => $valid_options, ) ); } else if ( 'custom' == $option_parameter['type'] ) { $valid_options = array(); foreach ( $option_parameter['valid_options'] as $valid_option ) { $valid_options[$valid_option['name']] = $valid_option['title']; } $wp_customize->add_control( 'oenology_' . $option_parameter['name'], array( 'label' => $option_parameter['title'], 'section' => 'oenology_' . $option_parameter['tab'], 'settings' => 'theme_oenology_options['. $option_parameter['name'] . ']', 'type' => 'select', 'choices' => $valid_options, ) ); } } } // Settings API options initilization and validation add_action( 'customize_register', 'oenology_register_theme_customizer' ); ?>