name = 'checkbox'; $this->label = __("Checkbox",'acf'); $this->category = __("Choice",'acf'); $this->defaults = array( 'layout' => 'vertical', 'choices' => array(), 'default_value' => '', ); // do not delete! parent::__construct(); } /* * create_field() * * Create the HTML interface for your field * * @param $field - an array holding all the field's data * * @type action * @since 3.6 * @date 23/01/13 */ function create_field( $field ) { // value must be array if( !is_array($field['value']) ) { // perhaps this is a default value with new lines in it? if( strpos($field['value'], "\n") !== false ) { // found multiple lines, explode it $field['value'] = explode("\n", $field['value']); } else { $field['value'] = array( $field['value'] ); } } // trim value $field['value'] = array_map('trim', $field['value']); // vars $i = 0; $e = ''; $e .= ''; // return echo $e; } /* * create_options() * * Create extra options for your field. This is rendered when editing a field. * The value of $field['name'] can be used (like bellow) to save extra data to the $field * * @type action * @since 3.6 * @date 23/01/13 * * @param $field - an array holding all the field's data */ function create_options( $field ) { // vars $key = $field['name']; // implode checkboxes so they work in a textarea if( is_array($field['choices']) ) { foreach( $field['choices'] as $k => $v ) { $field['choices'][ $k ] = $k . ' : ' . $v; } $field['choices'] = implode("\n", $field['choices']); } ?>


'textarea', 'class' => 'textarea field_option-choices', 'name' => 'fields['.$key.'][choices]', 'value' => $field['choices'], )); ?>

'textarea', 'name' => 'fields['.$key.'][default_value]', 'value' => $field['default_value'], )); ?> 'radio', 'name' => 'fields['.$key.'][layout]', 'value' => $field['layout'], 'layout' => 'horizontal', 'choices' => array( 'vertical' => __("Vertical",'acf'), 'horizontal' => __("Horizontal",'acf') ) )); ?>