__( 'Delete', 'meta-box' ), ] ); } /** * Get field HTML. * * @param mixed $meta Meta value. * @param array $field Field parameters. * @return string */ public static function html( $meta, $field ) { if ( ! is_array( $meta ) ) { $meta = [ $meta ]; } // Filter out empty values in case the array started with empty or 0 values $meta = array_filter( $meta, function ( $index ) use ( $meta ) { return $meta[ $index ] !== ''; }, ARRAY_FILTER_USE_KEY ); $field = apply_filters( 'rwmb_autocomplete_field', $field, $meta ); $options = $field['options']; if ( is_array( $field['options'] ) ) { $options = []; foreach ( $field['options'] as $value => $label ) { $options[] = [ 'value' => (string) $value, 'label' => $label, ]; } $options = wp_json_encode( $options ); } // Input field that triggers autocomplete. // This field doesn't store field values, so it doesn't have "name" attribute. // The value(s) of the field is store in hidden input(s). See below. $html = sprintf( ' ', esc_attr( $field['field_name'] ), esc_attr( $options ) ); $html .= '