Register setting not working with multiple checkbox
-
I created a new setting field with multiple checkboxes in my WordPress admin. However the value of the field new_setting not saved correctly. It should be an array, but after I do
var_dump(get_option( 'new_setting'))I getstring(5) "Array"What I must change to save multiple checkboxes in a correct way?
Here is my code:
class clinto_general_settings { function clinto_general_settings() { add_filter( 'admin_init' , array( &$this , 'clinto_register_fields' ) ); } function clinto_register_fields() { register_setting( 'general', 'new_setting', 'esc_attr' ); add_settings_field('mk_new_setting', '<label for="new_setting">'.__('Active directors' , 'new_setting' ).'</label>' , array(&$this, 'clinto_fields_html') , 'general' ); } function clinto_fields_html() { $value = get_option( 'new_setting'); $terms = get_terms( 'director', array( 'orderby' => 'term_order', 'hide_empty' => 0, )); if ( ! empty( $terms ) && ! is_wp_error( $terms ) ){ foreach ( $terms as $term ) { echo '<input id="new_setting'.$term->term_id.'" type="checkbox" name="new_setting[]" value="'.$term->term_id.'" />'; echo '<label for="new_setting'.$term->term_id.'">'.$term->name.'</label><br/>'; } } } } $clinto_general_settings = new clinto_general_settings();
Viewing 1 replies (of 1 total)
Viewing 1 replies (of 1 total)
The topic ‘Register setting not working with multiple checkbox’ is closed to new replies.