PluginProbe
WP Directory Kit / 1.2.7
WP Directory Kit v1.2.7
1.5.6 1.5.5 1.5.4 1.5.3 trunk 1.1.0 1.1.6 1.1.8 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.8 1.4.0 1.4.1 All 35 releases
wpdirectorykit / application / views / search_fields / CATEGORY.php

CATEGORY.php in WP Directory Kit 1.2.7, at application/views/search_fields/CATEGORY.php

162 lines 6.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * The template for Search field CATEGORY.
4 *
5 * This is the template that field layout for search form
6 *
7 */
8
9 if ( ! defined( 'ABSPATH' ) ) {
10 exit; // Exit if accessed directly.
11 }
12 ?>
13 <?php
14 $field_key = 'search_category';
15 $field_attr_id = 'wdk_search_'.wmvc_show_data('idfield', $field_data);
16 $placeholder = wmvc_show_data('field_label', $field_data);
17 $field_value = '';
18 $placeholder = esc_html__($placeholder,'wpdirectorykit');
19
20 $filter_ids = array();
21 if(isset($predefinedfields_query) && !empty($predefinedfields_query[$field_key])) {
22 $field_value = intval($predefinedfields_query[$field_key]);
23 }
24
25 if(isset($predefinedfields_query) && !empty($predefinedfields_query['custom_category_root'])) {
26 $custom_field_value = intval($predefinedfields_query['custom_category_root']);
27 global $Winter_MVC_WDK;
28 $Winter_MVC_WDK->load_helper('listing');
29 $Winter_MVC_WDK->model('category_m');
30 $category = $Winter_MVC_WDK->category_m->get($custom_field_value, TRUE);
31
32 /* if root search childs */
33 if(empty(wmvc_show_data('parent_id', $category, false, TRUE, TRUE))) {
34 $filter_ids = wdk_category_get_all_childs($custom_field_value);
35 if(!empty($filter_ids)) {
36 $filter_ids[] = $custom_field_value;
37
38 if(in_array($field_value, $filter_ids) === FALSE) {
39 $field_value = $custom_field_value;
40 }
41 }
42 }
43 }
44
45 if(isset($_GET[$field_key])) {
46 $field_value = ($_GET[$field_key]);
47 }
48
49 wdk_search_fields_toggle();
50 ?>
51
52 <?php if(wdk_get_option('wdk_multi_categories_search_field_type') == 'wdk_treefield_dropdown'):?>
53 <?php
54 global $Winter_MVC_WDK;
55 $Winter_MVC_WDK->load_helper('listing');
56 $Winter_MVC_WDK->model('category_m');
57
58 $categories = array();
59 if(!empty($field_value)) {
60 $categories[] = $field_value;
61 $category = $Winter_MVC_WDK->category_m->get($field_value, TRUE);
62
63 while(!empty($category->parent_id)) {
64 $category = $Winter_MVC_WDK->category_m->get($category->parent_id, TRUE);
65 $categories[] = $category->idcategory;
66 }
67 krsort($categories);
68 } else {
69 $categories[] = 0;
70 }
71
72 wp_enqueue_style('wdk-treefield-dropdown');
73 wp_enqueue_script('wdk-treefield-dropdown');
74 wp_enqueue_style( 'dashicons' );
75
76
77 $level_max = $Winter_MVC_WDK->category_m->get_max_level();
78
79 $placeholder = [
80 0 => esc_html__('Select Categories','wpdirectorykit'),
81 1 => esc_html__('Select Sub Categories','wpdirectorykit'),
82 2 => esc_html__('Select Sub Categories','wpdirectorykit'),
83 3 => esc_html__('Select Sub Categories','wpdirectorykit'),
84 4 => esc_html__('Select Sub Categories','wpdirectorykit'),
85 5 => esc_html__('Select Sub Categories','wpdirectorykit'),
86 ];
87
88
89 ?>
90
91 <input name="<?php echo esc_attr($field_key); ?>" type="hidden" value="<?php echo esc_attr($field_value); ?>">
92 <?php
93 $level = 0;
94 foreach ($categories as $category) {
95 $current = $Winter_MVC_WDK->category_m->get($category, TRUE);
96
97 $list = $Winter_MVC_WDK->category_m->get_by(array('parent_id = '.$current->parent_id => NULL));
98
99 if(isset($placeholder[$level])) {
100 $values_list = array(''=> $placeholder[$level]);
101 } else {
102 $values_list = array(''=> esc_html__('Select Sub Categories','wpdirectorykit'));
103 }
104
105 foreach ($list as $list_value) {
106 $values_list[$list_value->idcategory] = $list_value->category_title;
107 }
108 ?>
109
110 <div data-level="<?php echo esc_attr($level);?>" data-field="<?php echo esc_attr($field_key); ?>" class="wdk-field wdk-col wdk_treefield_dropdown <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>
111 wdk_field_id_category">
112 <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label>
113 <div class="wdk-field-group">
114 <?php echo wmvc_select_option('category_'.$level, $values_list, $category, 'class="wdk-control"');?>
115 </div>
116 </div>
117
118 <?php
119 $level++;
120 }
121
122 if($level<$level_max ) {
123 for (; $level<$level_max;) {
124
125 if(isset($placeholder[$level])) {
126 $values_list = array(''=> $placeholder[$level]);
127 } else {
128 $values_list = array(''=> esc_html__('Select Sub Categories','wpdirectorykit'));
129 }
130
131 ?>
132
133 <div data-level="<?php echo esc_attr($level);?>" data-field="<?php echo esc_attr($field_key); ?>" class="wdk-field wdk-col wdk_treefield_dropdown <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>">
134 <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label>
135 <div class="wdk-field-group">
136 <?php echo wmvc_select_option('category_'.$level, $values_list, NULL, 'class="wdk-control"');?>
137 </div>
138 </div>
139
140 <?php
141 $level++;
142 }
143 }
144 ?>
145 <?php else:?>
146 <div class="wdk-field wdk-col <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>">
147 <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label>
148 <div class="wdk-field-group">
149 <?php if(wdk_get_option('wdk_multi_categories_search_field_type') == 'select2'):?>
150 <?php echo wdk_treefield_select_ajax ($field_key.'[]', 'category_m', $field_value, 'category_title','idcategory', '', __('All Categories', 'wpdirectorykit'), $filter_ids);?>
151 <?php elseif(wdk_get_option('wdk_multi_categories_search_field_type') == 'wdk_treefield_checkboxes'):?>
152 <?php
153 wp_enqueue_style( 'wdk-treefield-checkboxes');
154 wp_enqueue_script( 'wdk-treefield-checkboxes');
155 ?>
156 <?php echo wdk_treefield_option_checkboxes ('search_category', 'category_m', $field_value, 'category_title', '', __('All Categories', 'wpdirectorykit'), $filter_ids);?>
157 <?php else:?>
158 <?php echo wdk_treefield_option ('search_category', 'category_m', $field_value, 'category_title', '', __('All Categories', 'wpdirectorykit'), $filter_ids);?>
159 <?php endif;?>
160 </div>
161 </div>
162 <?php endif;?>