_nicename = __( 'Multi-Select', 'ninja-forms' ); add_filter( 'ninja_forms_merge_tag_calc_value_' . $this->_type, array( $this, 'get_calc_value' ), 10, 2 ); } public function admin_form_element( $id, $value ) { $field = Ninja_Forms()->form()->get_field( $id ); $options = ''; foreach( $field->get_setting( 'options' ) as $option ){ $selected = ( is_array( $value ) && in_array( $option[ 'value' ], $value ) ) ? "selected" : ''; $options .= ""; } return ""; } public function get_calc_value( $value, $field ) { $selected = explode( ',', $value ); $value = 0; if( isset( $field[ 'options' ] ) ) { foreach ($field['options'] as $option ) { if( ! isset( $option[ 'value' ] ) || ! in_array( $option[ 'value' ], $selected ) || ! isset( $option[ 'calc' ] ) ) continue; $value += $option[ 'calc' ]; } } return $value; } }