<?php vc_map(array("name" => __("WOO Products", DHVC_WOO), "base" => "dhvc_woo_products", "category" => __("WooComerce", DHVC_WOO), "icon" => "icon-dhvc-woo-product", "params" => dhvc_woo_params()));
public function shortcode_params() { $params = dhvc_woo_params(); $params_fields = array('dhvc_woo_field_id' => 'dhvc_woo_setting_field_id', 'dhvc_woo_field_products_ajax' => 'dhvc_woo_setting_field_products_ajax', 'dhvc_woo_field_exclude_products_ajax' => 'dhvc_woo_setting_field_products_ajax', 'dhvc_woo_field_id' => 'dhvc_woo_setting_field_id', 'dhvc_woo_field_categories' => 'dhvc_woo_setting_field_categories', 'dhvc_woo_field_exclude_categories' => 'dhvc_woo_setting_field_categories', 'dhvc_woo_field_tags' => 'dhvc_woo_setting_field_tags', 'dhvc_woo_field_brands' => 'dhvc_woo_setting_field_brands', 'dhvc_woo_field_exclude_brands' => 'dhvc_woo_setting_field_brands', 'dhvc_woo_field_exclude_tags' => 'dhvc_woo_setting_field_tags', 'dhvc_woo_field_attributes' => 'dhvc_woo_setting_field_attributes', 'dhvc_woo_field_heading' => 'dhvc_woo_setting_field_heading'); ob_start(); ?> <div class="dhvc-woo-shortcode-params"> <?php foreach ($params as $param) { ?> <div class="dhvc-woo-shortcode-param"> <?php if (isset($param['heading'])) { ?> <div class="dhvc-woo-element-label"><?php echo $param['heading']; ?> </div> <?php } ?> <div class="dhvc-woo-element-input"> <?php $dependency = ''; if (isset($param['dependency'])) { $dependency_value = isset($param['dependency']['value']) ? $param['dependency']['value'] : ''; if (is_array($dependency_value)) { $dependency_value = implode(',', $dependency_value); } $dependency = 'data-dependency="toggle" data-dependency-element="' . $param['dependency']['element'] . '" data-dependency-value = "' . $dependency_value . '"'; } if (array_key_exists($param['type'], $params_fields)) { $func = $params_fields[$param['type']]; $value = ''; if (isset($param['value'])) { $value = $param['value']; } echo call_user_func($func, $param, $value, $dependency); } else { switch ($param['type']) { case 'textfield': echo '<input ' . $dependency . ' id="' . $param['param_name'] . '" class="dhvc-woo-param-value" name="' . $param['param_name'] . '" value="' . @$param['value'] . '" type="text"/>'; break; case 'dropdown': $param_line = '<select ' . $dependency . ' name="' . $param['param_name'] . '" class="dhvc-woo-param-value" id="' . $param['param_name'] . '">'; $param_value = ''; $flag = false; foreach ($param['value'] as $text_val => $val) { if (is_numeric($text_val) && (is_string($val) || is_numeric($val))) { $text_val = $val; } $text_val = __($text_val, DHVC_WOO); $selected = ''; if (!$flag) { $param_value = $val; $flag = true; } if ((string) $val === (string) $param_value) { $selected = ' selected="selected"'; } $param_line .= '<option value="' . $val . '"' . $selected . '>' . htmlspecialchars($text_val) . '</option>'; } $param_line .= '</select>'; echo $param_line; break; case 'checkbox': $values = is_array($param['value']) ? $param['value'] : array(); $param_line = ''; foreach ($values as $label => $v) { $checked = ''; $param_line .= ' <input ' . $dependency . ' id="' . $param['param_name'] . '-' . $v . '" value="' . $v . '" class="dhvc-woo-param-value ' . $param['param_name'] . ' ' . $param['type'] . '" type="checkbox" name="' . $param['param_name'] . '"' . $checked . '> ' . __($label, DHVC_WOO); } echo $param_line; break; case 'colorpicker': echo '<div class="color-group">' . '<input ' . $dependency . ' name="' . $param['param_name'] . '" class="dhvc-woo-param-value ' . $param['type'] . '_field dhvc-woo-color-control" value="' . $param['value'] . '" type="text"/>' . '</div>'; break; default: break; } } ?> <?php if (isset($param['description'])) { ?> <span class="clear" style="font-size: 11px;color:#999999"><?php echo $param['description']; ?> </span> <?php } ?> </div> </div> <?php } ?> <p class="submit"> <input id="dhvcwoocommerce-shortcode-submit" class="button-primary" type="button" value="Insert Shortcode"> </p> </div> <?php return ob_get_clean(); }