public function render_content() { $this->options['id'] = $this->id; $this->options['default'] = $this->setting->default; $this->options['attributes']['data-customize-setting-link'] = $this->settings['default']->id; echo zels_add_element($this->options, $this->value(), $this->unique); }
public function output() { echo $this->element_before(); $last_id = is_array($this->value) ? count($this->value) : 0; $acc_title = isset($this->field['accordion_title']) ? $this->field['accordion_title'] : __('Adding', ZELS_TEXTDOMAIN); $field_title = isset($this->field['fields'][0]['title']) ? $this->field['fields'][0]['title'] : $this->field['fields'][1]['title']; $field_id = isset($this->field['fields'][0]['id']) ? $this->field['fields'][0]['id'] : $this->field['fields'][1]['id']; $search_id = zels_array_search($this->field['fields'], 'id', $acc_title); if (!empty($search_id)) { $acc_title = isset($search_id[0]['title']) ? $search_id[0]['title'] : $acc_title; $field_id = isset($search_id[0]['id']) ? $search_id[0]['id'] : $field_id; } echo '<div class="zels-group hidden">'; echo '<h4 class="zels-group-title">' . $acc_title . '</h4>'; echo '<div class="zels-group-content">'; foreach ($this->field['fields'] as $field_key => $field) { $field['sub'] = true; $unique = $this->unique . '[_nonce][' . $this->field['id'] . '][' . $last_id . ']'; $field_default = isset($field['default']) ? $field['default'] : ''; echo zels_add_element($field, $field_default, $unique); } echo '<div class="zels-element zels-text-right"><a href="#" class="button zels-warning-primary zels-remove-group">' . __('Remove', ZELS_TEXTDOMAIN) . '</a></div>'; echo '</div>'; echo '</div>'; echo '<div class="zels-groups zels-accordion">'; if (!empty($this->value)) { foreach ($this->value as $key => $value) { $title = isset($this->value[$key][$field_id]) ? $this->value[$key][$field_id] : ''; if (is_array($title) && isset($this->multilang)) { $lang = zels_language_defaults(); $title = $title[$lang['current']]; $title = is_array($title) ? $title[0] : $title; } $field_title = !empty($search_id) ? $acc_title : $field_title; echo '<div class="zels-group">'; echo '<h4 class="zels-group-title">' . $field_title . ': ' . $title . '</h4>'; echo '<div class="zels-group-content">'; foreach ($this->field['fields'] as $field_key => $field) { $field['sub'] = true; $unique = $this->unique . '[' . $this->field['id'] . '][' . $key . ']'; $value = isset($field['id']) && isset($this->value[$key][$field['id']]) ? $this->value[$key][$field['id']] : ''; echo zels_add_element($field, $value, $unique); } echo '<div class="zels-element zels-text-right"><a href="#" class="button zels-warning-primary zels-remove-group">' . __('Remove', ZELS_TEXTDOMAIN) . '</a></div>'; echo '</div>'; echo '</div>'; } } echo '</div>'; echo '<a href="#" class="button button-primary zels-add-group">' . $this->field['button_title'] . '</a>'; echo $this->element_after(); }
public function output() { echo $this->element_before(); echo '<div class="zels-inner">'; foreach ($this->field['fields'] as $field) { $field_id = isset($field['id']) ? $field['id'] : ''; $field_value = isset($this->value[$field_id]) ? $this->value[$field_id] : ''; $unique_id = $this->unique . '[' . $this->field['id'] . ']'; echo zels_add_element($field, $field_value, $unique_id); } echo '</div>'; echo $this->element_after(); }
public function output() { echo $this->element_before(); $value_defaults = array('image' => '', 'repeat' => '', 'position' => '', 'attachment' => '', 'color' => ''); $this->value = wp_parse_args($this->element_value(), $value_defaults); $upload_type = isset($upload_type) ? $upload_type : 'image'; $button_title = isset($button_title) ? $button_title : __('Upload', ZELS_TEXTDOMAIN); $frame_title = isset($frame_title) ? $frame_title : __('Upload', ZELS_TEXTDOMAIN); $insert_title = isset($insert_title) ? $insert_title : __('Use Image', ZELS_TEXTDOMAIN); echo '<div class="zels-field-upload">'; echo '<input type="text" name="' . $this->element_name('[image]') . '" value="' . $this->value['image'] . '"' . $this->element_class() . $this->element_attributes() . '/>'; echo '<a href="#" class="button zels-add" data-frame-title="' . $frame_title . '" data-upload-type="' . $upload_type . '" data-insert-title="' . $insert_title . '">' . $button_title . '</a>'; echo '</div>'; // background attributes echo '<fieldset>'; echo zels_add_element(array('pseudo' => true, 'type' => 'select', 'name' => $this->element_name('[repeat]'), 'options' => array('' => 'repeat', 'repeat-x' => 'repeat-x', 'repeat-y' => 'repeat-y', 'no-repeat' => 'no-repeat', 'inherit' => 'inherit'), 'attributes' => array('data-atts' => 'repeat'), 'value' => $this->value['repeat'])); echo zels_add_element(array('pseudo' => true, 'type' => 'select', 'name' => $this->element_name('[position]'), 'options' => array('' => 'left top', 'left center' => 'left center', 'left bottom' => 'left bottom', 'right top' => 'right top', 'right center' => 'right center', 'right bottom' => 'right bottom', 'center top' => 'center top', 'center center' => 'center center', 'center bottom' => 'center bottom'), 'attributes' => array('data-atts' => 'position'), 'value' => $this->value['position'])); echo zels_add_element(array('pseudo' => true, 'type' => 'select', 'name' => $this->element_name('[attachment]'), 'options' => array('' => 'scroll', 'fixed' => 'fixed'), 'attributes' => array('data-atts' => 'attachment'), 'value' => $this->value['attachment'])); echo zels_add_element(array('pseudo' => true, 'id' => $this->field['id'] . '_color', 'type' => 'color_picker', 'name' => $this->element_name('[color]'), 'attributes' => array('data-atts' => 'bgcolor'), 'value' => $this->value['color'], 'default' => isset($this->field['default']['color']) ? $this->field['default']['color'] : '', 'rgba' => isset($this->field['rgba']) && $this->field['rgba'] === false ? false : '')); echo '</fieldset>'; echo $this->element_after(); }
public function render_meta_box_content($post, $callback) { global $post; wp_nonce_field('zels-framework-metabox', 'zels-framework-metabox-nonce'); $unique = $callback['args']['id']; $sections = $callback['args']['sections']; $meta_value = get_post_meta($post->ID, $unique, true); $current_id = get_transient('zels_section_id' . $unique); $has_nav = count($sections) >= 2 && $callback['args']['context'] != 'side' ? true : false; $show_all = !$has_nav ? ' zels-show-all' : ''; $section_name = !empty($sections[0]['fields']) ? $sections[0]['name'] : $sections[1]['name']; $section_id = !empty($current_id) ? $current_id : $section_name; $section_id = !empty($_GET['zels-section']) ? esc_attr($_GET['zels-section']) : $section_id; echo '<div class="zels-framework zels-metabox-framework">'; echo '<input type="hidden" name="zels_section_id[' . $unique . ']" class="zels-reset-section" value="' . $section_id . '">'; echo '<div class="zels-body' . $show_all . '">'; if ($has_nav) { echo '<div class="zels-nav">'; echo '<ul>'; foreach ($sections as $value) { $tab_icon = !empty($value['icon']) ? '<i class="zels-icon ' . $value['icon'] . '"></i>' : ''; if (isset($value['fields'])) { $active_section = $section_id == $value['name'] ? ' class="zels-section-active"' : ''; echo '<li><a href="#"' . $active_section . ' data-section="' . $value['name'] . '">' . $tab_icon . $value['title'] . '</a></li>'; } else { echo '<li><div class="zels-seperator">' . $tab_icon . $value['title'] . '</div></li>'; } } echo '</ul>'; echo '</div>'; } echo '<div class="zels-content">'; echo '<div class="zels-sections">'; foreach ($sections as $val) { if (isset($val['fields'])) { $active_content = $section_id == $val['name'] ? ' style="display: block;"' : ''; echo '<div id="zels-tab-' . $val['name'] . '" class="zels-section"' . $active_content . '>'; echo isset($val['title']) ? '<div class="zels-section-title"><h3>' . $val['title'] . '</h3></div>' : ''; foreach ($val['fields'] as $field_key => $field) { $default = isset($field['default']) ? $field['default'] : ''; $elem_id = isset($field['id']) ? $field['id'] : ''; $elem_value = is_array($meta_value) && isset($meta_value[$elem_id]) ? $meta_value[$elem_id] : $default; echo zels_add_element($field, $elem_value, $unique); } echo '</div>'; } } echo '</div>'; echo '<div class="clear"></div>'; echo '</div>'; echo $has_nav ? '<div class="zels-nav-background"></div>' : ''; echo '<div class="clear"></div>'; echo '</div>'; echo '</div>'; }
public function shortcode_generator() { if (!isset($_REQUEST['shortcode'])) { die; } $request = $_REQUEST['shortcode']; $shortcode = $this->shortcodes[$request]; if (isset($shortcode['fields'])) { foreach ($shortcode['fields'] as $key => $field) { if (isset($field['id'])) { $field['attributes'] = isset($field['attributes']) ? wp_parse_args(array('data-atts' => $field['id']), $field['attributes']) : array('data-atts' => $field['id']); } $field_default = isset($field['default']) ? $field['default'] : ''; if (in_array($field['type'], array('image_select', 'checkbox')) && isset($field['options'])) { $field['attributes']['data-check'] = true; } echo zels_add_element($field, $field_default, 'shortcode'); } } if (isset($shortcode['clone_fields'])) { $clone_id = isset($shortcode['clone_id']) ? $shortcode['clone_id'] : $shortcode['name']; echo '<div class="zels-shortcode-clone" data-clone-id="' . $clone_id . '">'; echo '<a href="#" class="zels-remove-clone"><i class="fa fa-trash"></i></a>'; foreach ($shortcode['clone_fields'] as $key => $field) { $field['sub'] = true; $field['attributes'] = isset($field['attributes']) ? wp_parse_args(array('data-clone-atts' => $field['id']), $field['attributes']) : array('data-clone-atts' => $field['id']); $field_default = isset($field['default']) ? $field['default'] : ''; if (in_array($field['type'], array('image_select', 'checkbox')) && isset($field['options'])) { $field['attributes']['data-check'] = true; } echo zels_add_element($field, $field_default, 'shortcode'); } echo '</div>'; echo '<div class="zels-clone-button"><a id="shortcode-clone-button" class="button" href="#"><i class="fa fa-plus-circle"></i> ' . $shortcode['clone_title'] . '</a></div>'; } die; }
public function field_callback($field) { $value = isset($field['id']) && isset($this->get_option[$field['id']]) ? $this->get_option[$field['id']] : ''; echo zels_add_element($field, $value, $this->unique); }