PluginProbe ʕ •ᴥ•ʔ
Shortcodes and extra features for Phlox theme / 2.9.22
Shortcodes and extra features for Phlox theme v2.9.22
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-widget.php
auxin-elements / includes / elements Last commit date
about-widget.php 4 years ago accordion-widget.php 4 years ago accordion.php 4 years ago attachment-url.php 4 years ago audio.php 4 years ago before-after.php 4 years ago button.php 4 years ago code.php 4 years ago contact-box.php 4 years ago contact-form.php 4 years ago custom-list.php 4 years ago divider.php 4 years ago dropcap.php 4 years ago facebook.php 4 years ago flickr.php 4 years ago gallery.php 4 years ago general-element-fields.php 4 years ago gmap.php 4 years ago highlight.php 4 years ago image.php 4 years ago instagram-feed.php 4 years ago latest-items.php 4 years ago latest-posts-slider.php 4 years ago popular-posts-widget.php 4 years ago products-grid.php 4 years ago quote.php 4 years ago recent-posts-grid-carousel.php 4 years ago recent-posts-land-style.php 4 years ago recent-posts-masonry.php 4 years ago recent-posts-tiles-carousel.php 4 years ago recent-posts-tiles.php 4 years ago recent-posts-timeline.php 4 years ago recent-posts-widget.php 4 years ago recent-products.php 4 years ago related-posts.php 8 years ago sample-element.php 4 years ago search.php 4 years ago socials-list.php 4 years ago staff.php 4 years ago tab-widget.php 4 years ago tabs.php 4 years ago testimonial.php 4 years ago text.php 4 years ago touch-slider.php 4 years ago video.php 4 years ago
accordion-widget.php
174 lines
1 <?php
2 /**
3 * Accordion Elements Just for Widgets
4 *
5 *
6 * @package Auxin
7 * @license LICENSE.txt
8 * @author averta
9 * @link http://phlox.pro/
10 * @copyright (c) 2010-2022 averta
11 */
12
13 function auxin_get_accordion_widget_master_array( $master_array ) {
14
15 $master_array['aux_accordion_widget'] = array(
16 'name' => __(' Accordion', 'auxin-elements'),
17 'auxin_output_callback' => 'auxin_get_accordion_widget_callback',
18 'base' => 'aux_accordion_widget',
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_vc' => false,
26 'category' => THEME_NAME,
27 'group' => '',
28 'admin_enqueue_js' => '',
29 'admin_enqueue_css' => '',
30 'front_enqueue_js' => '',
31 'front_enqueue_css' => '',
32 'icon' => 'aux-element aux-pb-icons-accordion',
33 'custom_markup' => '',
34 'js_view' => '',
35 'html_template' => '',
36 'deprecated' => '',
37 'content_element' => '',
38 'as_parent' => '',
39 'as_child' => '',
40 'params' => array(
41 array(
42 'heading' => __('Title','auxin-elements'),
43 'description' => __('Accordion title, leave it empty if you don`t need title.', 'auxin-elements'),
44 'param_name' => 'title',
45 'type' => 'textfield',
46 'value' => __( 'Accordion Title', 'auxin-elements' ),
47 'holder' => 'textfield',
48 'class' => 'title',
49 'admin_label' => true,
50 'dependency' => '',
51 'weight' => '',
52 'group' => '' ,
53 'edit_field_class' => ''
54 ),
55 array(
56 'heading' => __('Type','auxin-elements'),
57 'description' => __('Whether to show only 1 element opens at a time or multiple.','auxin-elements'),
58 'param_name' => 'type',
59 'type' => 'dropdown',
60 'def_value' => 'true',
61 'value' => array(
62 'false' => __('Toggle', 'auxin-elements'),
63 'true' => __('Accordion', 'auxin-elements'),
64 ),
65 'holder' => '',
66 'class' => 'type',
67 'admin_label' => true,
68 'dependency' => '',
69 'weight' => '',
70 'group' => '' ,
71 'edit_field_class' => ''
72 ),
73 array(
74 'heading' => __('Content', 'auxin-elements'),
75 'description' => __('Enter your accordion item content.', 'auxin-elements'),
76 'param_name' => 'content',
77 'type' => 'textarea_html',
78 'value' => '',
79 'def_value' => '[aux_accordion_tab label="Your Label"]
80 Your Content
81 [/aux_accordion_tab]',
82 'holder' => 'div',
83 'class' => 'content',
84 'admin_label' => true,
85 'dependency' => '',
86 'weight' => '',
87 'group' => '',
88 'edit_field_class' => ''
89 ),
90 array(
91 'heading' => __('Extra class name','auxin-elements'),
92 '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'),
93 'param_name' => 'extra_classes',
94 'type' => 'textfield',
95 'value' => '',
96 'def_value' => '',
97 'holder' => 'textfield',
98 'class' => 'extra_classes',
99 'admin_label' => true,
100 'dependency' => '',
101 'weight' => '',
102 'group' => '' ,
103 'edit_field_class' => ''
104 )
105 )
106 );
107
108 return $master_array;
109 }
110
111 add_filter( 'auxin_master_array_shortcodes', 'auxin_get_accordion_widget_master_array', 10, 1 );
112
113
114 /**
115 * Element without loop and column
116 * The front-end output of this element is returned by the following function
117 *
118 * @param array $atts The array containing the parsed values from shortcode, it should be same as defined params above.
119 * @param string $shortcode_content The shorcode content
120 * @return string The output of element markup
121 */
122 function auxin_get_accordion_widget_callback( $atts, $shortcode_content = null ){
123
124 // Defining default attributes
125 $default_atts = array(
126 'title' => '', // header title
127 'type' => 'true', // accordion/toggle
128 'content' => '', // Custom Shortcodes for content
129 'extra_classes' => '', // custom css class names for this element
130 'custom_el_id' => '', // custom id attribute for this element
131 'base_class' => 'aux-widget-accordion widget-toggle' // base class name for container
132 );
133
134 $result = auxin_get_widget_scafold( $atts, $default_atts, $shortcode_content );
135
136 extract( $result['parsed_atts'] );
137
138 // widget header ------------------------------
139 $output = $result['widget_header'];
140 $output .= $result['widget_title'];
141 $output .= '<div class="widget-inner ' .$extra_classes . '" data-toggle="' . $type . '">';
142
143 // widget custom output -----------------------
144
145 $output .= do_shortcode( $content ) ;
146
147 $output .= '</div>'; // End od widget-toggle
148 $output .= $result['widget_footer'];
149
150 // widget footer ------------------------------
151
152 return $output;
153
154 }
155
156 function auxin_accordion_tab_shortcode( $atts, $content = null ) {
157
158 $output = '';
159
160 extract( shortcode_atts(
161 array(
162 "label" => 'Label'
163 ), $atts )
164 );
165 $output .= '<section>';
166 $output .= '<h6 class="toggle-header">' . $label . '</h6>';
167 $output .= '<div class="toggle-content"><p>' . $content . '</p></div>';
168 $output .= '</section>';
169
170 return $output;
171 }
172
173 add_shortcode('aux_accordion_tab', 'auxin_accordion_tab_shortcode');
174