| @@ -17,9 +17,12 @@ | ||
| 17 | 17 | |
| 18 | 18 | $placeholder = wmvc_show_data('field_label', $field_data); |
| 19 | 19 | if(!empty(wmvc_show_data('placeholder', $field_data,''))) |
| 20 | 20 | $placeholder = wmvc_show_data('placeholder', $field_data); |
| 21 | - | |
| 21 | + | |
| 22 | +// Dynamic field values are registered in the translation catalog separately. | |
| 23 | +// phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText | |
| 24 | +$placeholder = esc_html__($placeholder,'wpdirectorykit'); | |
| 22 | 25 | $field_value = ''; |
| 23 | 26 | |
| 24 | 27 | $query_type = wmvc_show_data('query_type', $field_data, ''); |
| 25 | 28 | |
| @@ -30,11 +33,16 @@ | ||
| 30 | 33 | $field_value = sanitize_text_field($predefinedfields_query[$field_key]); |
| 31 | 34 | } |
| 32 | 35 | |
| 33 | 36 | if(isset($_GET[$field_key])) { |
| 34 | - $field_value = sanitize_text_field($_GET[$field_key]); | |
| 37 | + $field_value = sanitize_text_field(wp_unslash($_GET[$field_key])); | |
| 35 | 38 | } |
| 36 | 39 | |
| 40 | +$suffix = ''; | |
| 41 | +$prefix = ''; | |
| 42 | +$clear_prefix = $prefix = apply_filters( 'wpdirectorykit/listing/field/prefix', wmvc_show_data('prefix',$field_data), wmvc_show_data('idfield', $field_data)); | |
| 43 | +$clear_suffix = $suffix = apply_filters( 'wpdirectorykit/listing/field/suffix',wmvc_show_data('suffix',$field_data), wmvc_show_data('idfield', $field_data)); | |
| 44 | + | |
| 37 | 45 | if($query_type =='min') |
| 38 | 46 | $placeholder = esc_html__('Min','wpdirectorykit').' '.$placeholder; |
| 39 | 47 | |
| 40 | 48 | if($query_type =='max') |
| @@ -44,8 +52,9 @@ | ||
| 44 | 52 | |
| 45 | 53 | if(!empty(wmvc_show_data('values_list', $field_data)) && strpos(wmvc_show_data('values_list', $field_data), ',') !== FALSE){ |
| 46 | 54 | $values = explode(',', wmvc_show_data('values_list', $field_data)); |
| 47 | 55 | $values = array_combine($values, $values); |
| 56 | + array_walk($values, function(&$item) use($clear_prefix, $clear_suffix) {$item = $clear_prefix.$item.$clear_suffix;}); | |
| 48 | 57 | } |
| 49 | 58 | |
| 50 | 59 | wdk_search_fields_toggle(); |
| 51 | 60 | ?> |
| @@ -50,22 +59,31 @@ | ||
| 50 | 59 | wdk_search_fields_toggle(); |
| 51 | 60 | ?> |
| 52 | 61 | |
| 53 | 62 | <div class="wdk-field wdk-col wdk_search_<?php echo esc_attr($field_key);?> <?php if($query_type == 'min_max'):?>min_max_wdk-field<?php endif;?> <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?> |
| 54 | - wdk_field_id_<?php echo wmvc_show_data('idfield',$field_data);?>"> | |
| 55 | - <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label> | |
| 63 | + wdk_field_id_<?php echo esc_attr(wmvc_show_data('idfield',$field_data));?>"> | |
| 64 | + <label class="wdk-field-label"><?php | |
| 65 | + // Dynamic field values are registered in the translation catalog separately. | |
| 66 | + // phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText | |
| 67 | + echo esc_html__(wmvc_show_data('field_label', $field_data),'wpdirectorykit'); ?></label> | |
| 56 | 68 | <div class="wdk-field-group"> |
| 57 | 69 | <?php if($query_type == 'min_max'):?> |
| 58 | 70 | <div class="wdk-row min_max_row"> |
| 59 | - <div class="wdk-col-6"> | |
| 60 | - <?php echo wmvc_select_option($field_key.'_min' , (array(''=> __('Min', 'wpdirectorykit').' '.$placeholder) + $values), (isset($_GET[$field_key.'_min'])) ? esc_attr($_GET[$field_key.'_min']) : '', 'class="wdk-control"'); ?> | |
| 71 | + <div class="wdk-col wdk-col-6"> | |
| 72 | + <?php | |
| 73 | + // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped, WordPress.WP.I18n.NonSingularStringLiteralText | |
| 74 | + echo wmvc_select_option($field_key.'_min' , (array(''=> __('Min', 'wpdirectorykit').' '.$placeholder) + $values), (isset($_GET[$field_key.'_min'])) ? esc_attr($_GET[$field_key.'_min']) : '', 'class="wdk-control"'); ?> | |
| 61 | 75 | </div> |
| 62 | - <div class="wdk-col-6"> | |
| 63 | - <?php echo wmvc_select_option($field_key.'_max', (array(''=> __('Max', 'wpdirectorykit').' '.$placeholder) + $values), (isset($_GET[$field_key.'_max'])) ? esc_attr($_GET[$field_key.'_max']) : '', 'class="wdk-control"'); ?> | |
| 76 | + <div class="wdk-col wdk-col-6"> | |
| 77 | + <?php | |
| 78 | + // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped, WordPress.WP.I18n.NonSingularStringLiteralText | |
| 79 | + echo wmvc_select_option($field_key.'_max', (array(''=> __('Max', 'wpdirectorykit').' '.$placeholder) + $values), (isset($_GET[$field_key.'_max'])) ? esc_attr($_GET[$field_key.'_max']) : '', 'class="wdk-control"'); ?> | |
| 64 | 80 | </div> |
| 65 | 81 | </div> |
| 66 | 82 | <?php else:?> |
| 67 | - <?php echo wmvc_select_option($field_key , (array(''=> $placeholder) + $values), $field_value, 'class="wdk-control"'); ?> | |
| 83 | + <?php | |
| 84 | + // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped, WordPress.WP.I18n.NonSingularStringLiteralText | |
| 85 | + echo wmvc_select_option($field_key , (array(''=> $placeholder) + $values), $field_value, 'class="wdk-control"'); ?> | |
| 68 | 86 | <?php endif;?> |
| 69 | 87 | </div> |
| 70 | 88 | </div> |
| 71 | 89 | |