function hocwp_term_meta_add_field($args = array()) { $callback = hocwp_get_value_by_key($args, 'callback'); if (!hocwp_callback_exists($callback)) { $callback = hocwp_get_value_by_key($args, 'field_callback'); } $field_args = hocwp_get_value_by_key($args, 'field_args'); $field_args = wp_parse_args($field_args, $args); $class = hocwp_get_value_by_key($args, 'class'); $name = hocwp_get_value_by_key($args, 'name'); $id = hocwp_get_value_by_key($args, 'id'); hocwp_transmit_id_and_name($id, $name); $tmp = hocwp_sanitize_html_class($name); hocwp_add_string_with_space_before($class, 'form-field term-' . $name . '-wrap hocwp'); ?> <div class="<?php echo $class; ?> "> <?php if (hocwp_callback_exists($callback)) { call_user_func($callback, $field_args); } else { _e('Please set a valid callback for this field', 'hocwp-theme'); } ?> </div> <?php }
function hocwp_option_add_setting_field($base, $args) { $option = hocwp_option_get_object_from_list($base); if (hocwp_object_valid($option)) { $id = isset($args['id']) ? $args['id'] : ''; $name = isset($args['name']) ? $args['name'] : ''; hocwp_transmit_id_and_name($id, $name); $args['id'] = $option->get_field_id($id); $args['name'] = $option->get_field_name($name); if (!isset($args['value'])) { $default = hocwp_get_value_by_key($args, 'default'); $args['value'] = $option->get_by_key($name, $default); } $option->add_field($args); } }
public function add_field($args = array()) { $data_type = hocwp_get_value_by_key($args, 'data_type', 'default'); $callback = hocwp_get_value_by_key($args, 'field_callback'); if (hocwp_callback_exists($callback)) { if ('hocwp_field_input_checkbox' == $callback) { $data_type = 'checkbox'; } elseif ('hocwp_field_color_picker' == $callback) { $this->set_use_color_picker(true); } } $args['data_type'] = $data_type; $id = isset($args['id']) ? $args['id'] : ''; $name = isset($args['name']) ? $args['name'] : ''; $class = isset($args['class']) ? $args['class'] : ''; if (!isset($args['field_class'])) { $args['field_class'] = $class; } hocwp_transmit_id_and_name($id, $name); $args['id'] = $id; $args['name'] = $name; if (isset($args['default'])) { $args['field_args']['default'] = $args['default']; } $this->fields[] = $args; }
public function sanitize_field_args(&$args) { $id = isset($args['id']) ? $args['id'] : ''; $name = isset($args['name']) ? $args['name'] : ''; hocwp_transmit_id_and_name($id, $name); $args['id'] = $id; $args['name'] = $name; if ($this->is_term_meta()) { } elseif ($this->is_menu_item_meta()) { $args['before'] = '<div class="field-' . hocwp_sanitize_html_class($name) . ' description description-wide">'; $args['after'] = '</div>'; } else { $args['before'] = '<div class="meta-row">'; $args['after'] = '</div>'; } return $args; }
function hocwp_sanitize_field_args(&$args) { if (isset($args['sanitized'])) { return $args; } $field_class = isset($args['field_class']) ? $args['field_class'] : ''; $class = isset($args['class']) ? $args['class'] : ''; hocwp_add_string_with_space_before($field_class, $class); $widefat = isset($args['widefat']) ? (bool) $args['widefat'] : true; $id = isset($args['id']) ? $args['id'] : ''; $label = isset($args['label']) ? $args['label'] : ''; $name = isset($args['name']) ? $args['name'] : ''; hocwp_transmit_id_and_name($id, $name); $value = isset($args['value']) ? $args['value'] : ''; $description = isset($args['description']) ? $args['description'] : ''; $args['class'] = $field_class; $args['field_class'] = $field_class; $args['id'] = $id; $args['label'] = $label; $args['name'] = $name; $args['value'] = $value; $args['description'] = $description; $args['widefat'] = $widefat; $args['sanitized'] = true; return $args; }
function hocwp_field_input_right_label($type, $args = array()) { $options = isset($args['options']) ? $args['options'] : array(); $value = isset($args['value']) ? $args['value'] : ''; $label = isset($args['label']) ? $args['label'] : ''; $id = hocwp_get_value_by_key($args, 'id'); $name = hocwp_get_value_by_key($args, 'name'); hocwp_transmit_id_and_name($id, $name); if (!hocwp_array_has_value($options)) { $option_item = array('label' => $label, 'value' => $value, 'default' => hocwp_get_value_by_key($args, 'default'), 'id' => $id, 'name' => $name); $options[] = $option_item; } $count = 0; foreach ($options as $option) { $value = isset($option['value']) ? $option['value'] : $value; $option['type'] = $type; $option['before'] = isset($args['before']) ? $args['before'] : '<p>'; $option['after'] = isset($args['after']) ? $args['after'] : '</p>'; $option['name'] = isset($option['name']) ? $option['name'] : $name; $option['value'] = $value; if (hocwp_string_empty($value) && 0 == $count && 'radio' == $type) { $option['attributes']['checked'] = 'checked'; } hocwp_field_input($option); $count++; } }