PluginProbe ʕ •ᴥ•ʔ
Shortcodes and extra features for Phlox theme / 1.3.14
Shortcodes and extra features for Phlox theme v1.3.14
2.17.22 2.17.21 2.17.20 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.6 1.0.9 1.1.0 1.3.0 1.3.1 1.3.10 1.3.14 1.3.2 1.3.3 1.3.6 1.4.0 1.4.1 1.4.2 1.5.0 1.5.2 1.6.0 1.6.2 1.6.4 1.7.0 1.7.2 2.10.0 2.10.1 2.10.3 2.10.5 2.10.7 2.10.8 2.10.9 2.11.0 2.11.1 2.11.2 2.12.0 2.14.0 2.15.0 2.15.2 2.15.4 2.15.5 2.15.6 2.15.7 2.15.8 2.15.9 2.16.0 2.16.1 2.16.2 2.16.3 2.16.4 2.17.0 2.17.1 2.17.12 2.17.13 2.17.14 2.17.15 2.17.16 2.17.2 2.17.3 2.17.4 2.17.5 2.17.6 2.17.8 2.17.9 2.4.12 2.4.13 2.4.14 2.4.16 2.4.18 2.4.19 2.4.9 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.14 2.5.15 2.5.16 2.5.17 2.5.19 2.5.2 2.5.20 2.5.3 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.10 2.6.12 2.6.13 2.6.14 2.6.15 2.6.16 2.6.17 2.6.19 2.6.2 2.6.20 2.6.4 2.6.5 2.6.7 2.7.0 2.7.1 2.7.10 2.7.11 2.7.12 2.7.13 2.7.14 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 2.7.9 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.9 2.9.0 2.9.12 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.19 2.9.2 2.9.20 2.9.21 2.9.22 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8
auxin-elements / includes / elements / accordion.php
auxin-elements / includes / elements Last commit date
about-widget.php 9 years ago accordion-api.php 9 years ago accordion.php 9 years ago attachment-url.php 9 years ago audio.php 9 years ago before-after.php 9 years ago button.php 9 years ago code.php 9 years ago contact-box.php 9 years ago contact-form.php 9 years ago divider.php 9 years ago dropcap.php 9 years ago facebook.php 9 years ago flickr.php 9 years ago gallery.php 9 years ago gmap.php 9 years ago highlight.php 9 years ago image.php 9 years ago instagram-feed.php 9 years ago latest-items.php 10 years ago latest-posts-slider.php 9 years ago popular-posts-widget.php 9 years ago quote.php 9 years ago recent-posts-grid-carousel.php 9 years ago recent-posts-land-style.php 9 years ago recent-posts-masonry.php 9 years ago recent-posts-tiles.php 9 years ago recent-posts-timeline.php 9 years ago recent-posts-widget.php 9 years ago recent-posts.php 9 years ago related-posts.php 9 years ago sample-element.php 9 years ago search.php 9 years ago slider.php 9 years ago socials-list.php 9 years ago tabs-api.php 9 years ago tabs.php 9 years ago text.php 9 years ago touch-slider.php 9 years ago video.php 9 years ago
accordion.php
183 lines
1 <?php
2 /**
3 * Accordion element if site origin bundle plugin is activaited
4 *
5 *
6 * @package Auxin
7 * @license LICENSE.txt
8 * @author
9 * @link http://averta.net/phlox/
10 * @copyright (c) 2010-2017
11 */
12
13 function auxin_get_new_accordion_master_array( $master_array ) {
14
15 $master_array['aux_accordion'] = array(
16 'name' => __('[Phlox] Accordion ', 'auxin-elements'),
17 'auxin_output_callback' => 'auxin_widget_accordion_callback',
18 'base' => 'aux_accordion',
19 'description' => __('Collapsible content', 'auxin-elements'),
20 'class' => 'aux-widget-accordion widget-toggle',
21 'show_settings_on_create' => true,
22 'weight' => 1,
23 'is_widget' => true,
24 'is_shortcode' => true,
25 'is_so' => true,
26 'is_vc' => false,
27 'category' => THEME_NAME,
28 'group' => '',
29 'so_api' => true,
30 'admin_enqueue_js' => '',
31 'admin_enqueue_css' => '',
32 'front_enqueue_js' => '',
33 'front_enqueue_css' => '',
34 'icon' => 'auxin-element auxin-accordion',
35 'custom_markup' => '',
36 'js_view' => '',
37 'html_template' => '',
38 'deprecated' => '',
39 'content_element' => '',
40 'as_parent' => '',
41 'as_child' => '',
42 'params' => array(
43 array(
44 'heading' => __('Title','auxin-elements'),
45 'description' => __('Accordion title, leave it empty if you don`t need title.', 'auxin-elements'),
46 'param_name' => 'title',
47 'type' => 'textfield',
48 'value' => '',
49 'holder' => 'textfield',
50 'class' => 'title',
51 'admin_label' => true,
52 'dependency' => '',
53 'weight' => '',
54 'group' => '' ,
55 'edit_field_class' => ''
56 ),
57 array(
58 'heading' => __('Type','auxin-elements'),
59 'description' => __('Whether to show only 1 element opens at a time or multiple.','auxin-elements'),
60 'param_name' => 'type',
61 'type' => 'dropdown',
62 'def_value' => 'true',
63 'value' => array(
64 'false' => __('Toggle', 'auxin-elements'),
65 'true' => __('Accordion', 'auxin-elements'),
66 ),
67 'holder' => 'dropdown',
68 'class' => 'type',
69 'admin_label' => true,
70 'dependency' => '',
71 'weight' => '',
72 'group' => '' ,
73 'edit_field_class' => ''
74 ),
75 array(
76 'heading' => __('Accordion label','auxin-elements'),
77 'description' => __('Enter your accordion item label.', 'auxin-elements'),
78 'repeater' => 'accordion',
79 'repeater-label' => __('Accordion', 'auxin-elements'),
80 'section-name' => __('Accordion Section', 'auxin-elements'),
81 'param_name' => 'accordion_label',
82 'type' => 'textfield',
83 'value' => '',
84 'holder' => 'textfield',
85 'class' => 'accordion_label',
86 'admin_label' => true,
87 'dependency' => '',
88 'weight' => '',
89 'group' => '' ,
90 'edit_field_class' => ''
91 ),
92 array(
93 'heading' => __('Content', 'auxin-elements'),
94 'description' => __('Enter your accordion item content.', 'auxin-elements'),
95 'repeater' => 'accordion',
96 'repeater-label' => __('Accordion', 'auxin-elements'),
97 'section-name' => __('Accordion Section', 'auxin-elements'),
98 'param_name' => 'content',
99 'type' => 'textarea_html',
100 'value' => '',
101 'def_value' => '',
102 'holder' => 'div',
103 'class' => 'content',
104 'admin_label' => true,
105 'dependency' => '',
106 'weight' => '',
107 'group' => '',
108 'edit_field_class' => ''
109 ),
110 array(
111 'heading' => __('Extra class name','auxin-elements'),
112 'description' => __('If you wish to style particular content element differently, then use this field to add a class name and then refer to it in your css file.', 'auxin-elements'),
113 'param_name' => 'extra_classes',
114 'type' => 'textfield',
115 'value' => '',
116 'def_value' => '',
117 'holder' => 'textfield',
118 'class' => 'extra_classes',
119 'admin_label' => true,
120 'dependency' => '',
121 'weight' => '',
122 'group' => '' ,
123 'edit_field_class' => ''
124 )
125 )
126 );
127
128 return $master_array;
129 }
130
131 add_filter( 'auxin_master_array_shortcodes', 'auxin_get_new_accordion_master_array', 10, 1 );
132
133
134 /**
135 * Element without loop and column
136 * The front-end output of this element is returned by the following function
137 *
138 * @param array $atts The array containing the parsed values from shortcode, it should be same as defined params above.
139 * @param string $shortcode_content The shorcode content
140 * @return string The output of element markup
141 */
142 function auxin_widget_accordion_callback( $atts, $shortcode_content = null ){
143
144 // Defining default attributes
145 $default_atts = array(
146 'title' => '', // header title
147 'type' => 'true', // accordion/toggle
148 'accordion' => '', // accordion/toggle
149 'extra_classes' => '', // custom css class names for this element
150 'custom_el_id' => '', // custom id attribute for this element
151 'base_class' => 'aux-widget-accordion widget-toggle' // base class name for container
152 );
153
154 $result = auxin_get_widget_scafold( $atts, $default_atts, $shortcode_content );
155 extract( $result['parsed_atts'] );
156
157 // widget header ------------------------------
158 $output = $result['widget_header'];
159 $output .= $result['widget_title'];
160 $output .= '<div class="widget-inner ' .$extra_classes . '" data-toggle="' . $type . '">';
161
162 // widget custom output -----------------------
163 if (is_array($accordion) || is_object($accordion)) {
164 foreach ( $accordion as $key => $value ) {
165
166
167 $output .= '<section>';
168 $section_title = $value['accordion_label'];
169 $section_content = $value['content'];
170 $output .= '<h6 class="toggle-header">' . $section_title . '</h6>';
171 $output .= '<div class="toggle-content"><p>' . $section_content . '</p></div>';
172 $output .= '</section>';
173 }
174 }
175
176 $output .= '</div>'; // End od widget-toggle
177 $output .= $result['widget_footer'];
178
179 // widget footer ------------------------------
180
181 return $output;
182 }
183