@@ -8,23 +8,23 @@ |
||
8 | 8 | $sidebar_enabled = apply_filters( 'lsx_sidebar_enable', true ); |
9 | 9 | |
10 | 10 | if ( true !== $sidebar_enabled ) { |
11 | - return true; |
|
11 | + return true; |
|
12 | 12 | } |
13 | 13 | |
14 | 14 | $show_on_front = get_option( 'show_on_front' ); |
15 | 15 | |
16 | 16 | if ( 'page' === $show_on_front && is_front_page() ) { |
17 | - $layout = '1c'; |
|
18 | - $sidebar = 'home'; |
|
17 | + $layout = '1c'; |
|
18 | + $sidebar = 'home'; |
|
19 | 19 | } else { |
20 | - $layout = get_theme_mod( 'lsx_layout', '2cr' ); |
|
21 | - $layout = apply_filters( 'lsx_layout', $layout ); |
|
22 | - |
|
23 | - if ( 'posts' === $show_on_front && is_home() ) { |
|
24 | - $sidebar = 'home'; |
|
25 | - } else { |
|
26 | - $sidebar = 'sidebar-1'; |
|
27 | - } |
|
20 | + $layout = get_theme_mod( 'lsx_layout', '2cr' ); |
|
21 | + $layout = apply_filters( 'lsx_layout', $layout ); |
|
22 | + |
|
23 | + if ( 'posts' === $show_on_front && is_home() ) { |
|
24 | + $sidebar = 'home'; |
|
25 | + } else { |
|
26 | + $sidebar = 'sidebar-1'; |
|
27 | + } |
|
28 | 28 | } |
29 | 29 | |
30 | 30 | if ( '1c' !== $layout ) : ?> |
@@ -7,275 +7,275 @@ discard block |
||
7 | 7 | */ |
8 | 8 | |
9 | 9 | if ( ! defined( 'ABSPATH' ) ) { |
10 | - exit; |
|
10 | + exit; |
|
11 | 11 | } |
12 | 12 | |
13 | 13 | if ( ! function_exists( 'lsx_setup' ) ) : |
14 | 14 | |
15 | - /** |
|
16 | - * Theme after_setup_theme action. |
|
17 | - * |
|
18 | - * @package lsx |
|
19 | - * @subpackage config |
|
20 | - */ |
|
21 | - function lsx_setup() { |
|
22 | - global $content_width; |
|
23 | - $content_width = 1140; |
|
24 | - |
|
25 | - remove_theme_support( 'widgets-block-editor' ); |
|
26 | - |
|
27 | - load_theme_textdomain( 'lsx', get_template_directory() . '/languages' ); |
|
28 | - |
|
29 | - add_image_size( 'lsx-thumbnail-carousel', 350, 230, true ); |
|
30 | - add_image_size( 'lsx-thumbnail-wide', 360, 168, true ); |
|
31 | - add_image_size( 'lsx-thumbnail-square', 350, 350, true ); |
|
32 | - add_image_size( 'lsx-thumbnail-single', 750, 350, true ); |
|
33 | - add_image_size( 'lsx-banner', 1920, 600, true ); |
|
34 | - |
|
35 | - register_nav_menus( |
|
36 | - array( |
|
37 | - 'primary' => esc_html__( 'Primary Menu', 'lsx' ), |
|
38 | - 'top-menu' => esc_html__( 'Top Menu (right)', 'lsx' ), |
|
39 | - 'top-menu-left' => esc_html__( 'Top Menu (left)', 'lsx' ), |
|
40 | - 'social' => esc_html__( 'Social Menu', 'lsx' ), |
|
41 | - 'footer' => esc_html__( 'Footer Menu', 'lsx' ), |
|
42 | - ) |
|
43 | - ); |
|
44 | - |
|
45 | - add_theme_support( 'automatic-feed-links' ); |
|
46 | - add_theme_support( 'custom-background' ); |
|
47 | - |
|
48 | - add_theme_support( |
|
49 | - 'custom-logo', |
|
50 | - array( |
|
51 | - 'height' => 50, |
|
52 | - 'width' => 160, |
|
53 | - 'flex-width' => true, |
|
54 | - 'flex-height' => true, |
|
55 | - ) |
|
56 | - ); |
|
57 | - |
|
58 | - add_theme_support( 'html5', array( 'caption' ) ); |
|
59 | - |
|
60 | - add_theme_support( |
|
61 | - 'post-formats', |
|
62 | - array( |
|
63 | - 'image', |
|
64 | - 'video', |
|
65 | - 'gallery', |
|
66 | - 'audio', |
|
67 | - 'quote', |
|
68 | - ) |
|
69 | - ); |
|
70 | - |
|
71 | - add_theme_support( 'post-thumbnails' ); |
|
72 | - add_theme_support( 'sensei' ); |
|
73 | - |
|
74 | - add_theme_support( |
|
75 | - 'site-logo', |
|
76 | - array( |
|
77 | - 'header-text' => array( |
|
78 | - 'site-title', |
|
79 | - 'site-description', |
|
80 | - ), |
|
81 | - 'size' => 'medium', |
|
82 | - ) |
|
83 | - ); |
|
84 | - |
|
85 | - add_theme_support( 'title-tag' ); |
|
86 | - |
|
87 | - /* |
|
15 | + /** |
|
16 | + * Theme after_setup_theme action. |
|
17 | + * |
|
18 | + * @package lsx |
|
19 | + * @subpackage config |
|
20 | + */ |
|
21 | + function lsx_setup() { |
|
22 | + global $content_width; |
|
23 | + $content_width = 1140; |
|
24 | + |
|
25 | + remove_theme_support( 'widgets-block-editor' ); |
|
26 | + |
|
27 | + load_theme_textdomain( 'lsx', get_template_directory() . '/languages' ); |
|
28 | + |
|
29 | + add_image_size( 'lsx-thumbnail-carousel', 350, 230, true ); |
|
30 | + add_image_size( 'lsx-thumbnail-wide', 360, 168, true ); |
|
31 | + add_image_size( 'lsx-thumbnail-square', 350, 350, true ); |
|
32 | + add_image_size( 'lsx-thumbnail-single', 750, 350, true ); |
|
33 | + add_image_size( 'lsx-banner', 1920, 600, true ); |
|
34 | + |
|
35 | + register_nav_menus( |
|
36 | + array( |
|
37 | + 'primary' => esc_html__( 'Primary Menu', 'lsx' ), |
|
38 | + 'top-menu' => esc_html__( 'Top Menu (right)', 'lsx' ), |
|
39 | + 'top-menu-left' => esc_html__( 'Top Menu (left)', 'lsx' ), |
|
40 | + 'social' => esc_html__( 'Social Menu', 'lsx' ), |
|
41 | + 'footer' => esc_html__( 'Footer Menu', 'lsx' ), |
|
42 | + ) |
|
43 | + ); |
|
44 | + |
|
45 | + add_theme_support( 'automatic-feed-links' ); |
|
46 | + add_theme_support( 'custom-background' ); |
|
47 | + |
|
48 | + add_theme_support( |
|
49 | + 'custom-logo', |
|
50 | + array( |
|
51 | + 'height' => 50, |
|
52 | + 'width' => 160, |
|
53 | + 'flex-width' => true, |
|
54 | + 'flex-height' => true, |
|
55 | + ) |
|
56 | + ); |
|
57 | + |
|
58 | + add_theme_support( 'html5', array( 'caption' ) ); |
|
59 | + |
|
60 | + add_theme_support( |
|
61 | + 'post-formats', |
|
62 | + array( |
|
63 | + 'image', |
|
64 | + 'video', |
|
65 | + 'gallery', |
|
66 | + 'audio', |
|
67 | + 'quote', |
|
68 | + ) |
|
69 | + ); |
|
70 | + |
|
71 | + add_theme_support( 'post-thumbnails' ); |
|
72 | + add_theme_support( 'sensei' ); |
|
73 | + |
|
74 | + add_theme_support( |
|
75 | + 'site-logo', |
|
76 | + array( |
|
77 | + 'header-text' => array( |
|
78 | + 'site-title', |
|
79 | + 'site-description', |
|
80 | + ), |
|
81 | + 'size' => 'medium', |
|
82 | + ) |
|
83 | + ); |
|
84 | + |
|
85 | + add_theme_support( 'title-tag' ); |
|
86 | + |
|
87 | + /* |
|
88 | 88 | * @TODO - Necessary to test it |
89 | 89 | */ |
90 | 90 | |
91 | - // add_theme_support( 'woocommerce' );. |
|
92 | - add_theme_support( 'starter-content', array( |
|
93 | - 'widgets' => array( |
|
94 | - 'sidebar-home' => array( |
|
95 | - 'custom_widget_1' => array( |
|
96 | - 'text', |
|
97 | - |
|
98 | - array( |
|
99 | - 'title' => '', |
|
100 | - 'text' => wp_kses_post( '<div class="row"><div class="col-sm-12 text-center"><h3>Build your perfect website <small>with the LSX theme</small></h3></div></div><div class="row"><div class="col-sm-4 text-center"><h4>Fast</h4><p>"Quick" isn\'t a word most people use when describing their website building experience.</p></div><div class="col-sm-4 text-center"><h4>Easy</h4><p>We\'ve built websites for countless clients, and we know what kind of back-end makes sense easily.</p></div><div class="col-sm-4 text-center"><h4>Comprehensive</h4><p>The LSX extensions come with features out the box that are essential.</p></div></div>' ), |
|
101 | - ), |
|
102 | - ), |
|
103 | - |
|
104 | - 'custom_widget_2' => array( |
|
105 | - 'text', |
|
106 | - |
|
107 | - array( |
|
108 | - 'title' => '', |
|
109 | - 'text' => wp_kses_post( '<div class="lsx-full-width-alt"><div class="row"><div class="col-xs-12"><h3>A big CTA title</h3><p class="text-center"><a class="btn cta-btn" href="http://www.lsdeb.biz/" target="_blank" rel="noreferrer noopener">Hire Us</a><p></div></div></div>' ), |
|
110 | - ), |
|
111 | - ), |
|
112 | - |
|
113 | - 'custom_widget_3' => array( |
|
114 | - 'text', |
|
115 | - |
|
116 | - array( |
|
117 | - 'title' => '', |
|
118 | - 'text' => wp_kses_post( '<div class="row"><div class="col-xs-12"><h3>Homepage Widget</h3><p>Lorem ipsum dolor sit amet, <a href="#">consectetuer adipiscing elit</a>. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis. Suspendisse urna nibh, viverra non, semper suscipit, posuere a, pede.</p></div></div>' ), |
|
119 | - ), |
|
120 | - ), |
|
121 | - ), |
|
122 | - |
|
123 | - 'sidebar-footer' => array( |
|
124 | - 'custom_widget_1' => array( |
|
125 | - 'text', |
|
126 | - |
|
127 | - array( |
|
128 | - 'title' => esc_html__( 'Space for Footer Widgets', 'lsx' ), |
|
129 | - 'text' => esc_html__( 'This is here to showcase some footer widgets. You can decide what to add and what to hide. Nam nostrum evertitur ad, ut pri nibh veniam, urbanitas definitionem eum ex.', 'lsx' ), |
|
130 | - ), |
|
131 | - ), |
|
132 | - |
|
133 | - 'custom_widget_2' => array( |
|
134 | - 'text', |
|
135 | - |
|
136 | - array( |
|
137 | - 'title' => esc_html__( 'Space for Footer Widgets', 'lsx' ), |
|
138 | - 'text' => esc_html__( 'This is here to showcase some footer widgets. You can decide what to add and what to hide. Nam nostrum evertitur ad, ut pri nibh veniam, urbanitas definitionem eum ex.', 'lsx' ), |
|
139 | - ), |
|
140 | - ), |
|
141 | - |
|
142 | - 'custom_widget_3' => array( |
|
143 | - 'text', |
|
144 | - |
|
145 | - array( |
|
146 | - 'title' => esc_html__( 'Contact us:', 'lsx' ), |
|
147 | - 'text' => wp_kses_post( '<a href="mailto:[email protected]><i class="fa fa-envelope fa-fw"></i> [email protected]</a><br><a href="tel:+27214489843"><i class="fa fa-phone fa-fw"></i> +27 21 448 9843</a><br><i class="fa fa-skype fa-fw"></i> /lightspeeddevelopment' ), |
|
148 | - ), |
|
149 | - ), |
|
150 | - ), |
|
151 | - |
|
152 | - 'sidebar-footer-cta' => array( |
|
153 | - 'custom_widget_1' => array( |
|
154 | - 'text', |
|
155 | - |
|
156 | - array( |
|
157 | - 'title' => esc_html__( 'A Footer Call to Action', 'lsx' ), |
|
158 | - 'text' => esc_html__( 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis. Suspendisse urna nibh, viverra non, semper suscipit, posuere a, pede.', 'lsx' ), |
|
159 | - ), |
|
160 | - ), |
|
161 | - ), |
|
162 | - ), |
|
163 | - |
|
164 | - 'posts' => array( |
|
165 | - 'home' => array( |
|
166 | - 'template' => 'page-templates/template-front-page.php', |
|
167 | - 'thumbnail' => '{{image-banner-example-01}}', |
|
168 | - 'post_title' => esc_html__( 'LSX is a free WordPress theme', 'lsx' ), |
|
169 | - 'post_content' => '', |
|
170 | - ), |
|
171 | - |
|
172 | - 'about' => array( |
|
173 | - 'thumbnail' => '{{image-banner-example-02}}', |
|
174 | - ), |
|
175 | - |
|
176 | - 'blog', |
|
177 | - |
|
178 | - 'contact' => array( |
|
179 | - 'thumbnail' => '{{image-banner-example-03}}', |
|
180 | - ), |
|
181 | - ), |
|
182 | - |
|
183 | - 'attachments' => array( |
|
184 | - 'image-banner-example-01' => array( |
|
185 | - 'post_title' => esc_html_x( 'Banner Example 01', 'Theme starter content', 'lsx' ), |
|
186 | - 'file' => 'assets/images/admin/banner-example-01.jpg', |
|
187 | - ), |
|
188 | - |
|
189 | - 'image-banner-example-02' => array( |
|
190 | - 'post_title' => esc_html_x( 'Banner Example 02', 'Theme starter content', 'lsx' ), |
|
191 | - 'file' => 'assets/images/admin/banner-example-02.jpg', |
|
192 | - ), |
|
193 | - |
|
194 | - 'image-banner-example-03' => array( |
|
195 | - 'post_title' => esc_html_x( 'Banner Example 03', 'Theme starter content', 'lsx' ), |
|
196 | - 'file' => 'assets/images/admin/banner-example-03.jpg', |
|
197 | - ), |
|
198 | - ), |
|
199 | - |
|
200 | - 'options' => array( |
|
201 | - 'show_on_front' => 'page', |
|
202 | - 'page_on_front' => '{{home}}', |
|
203 | - 'page_for_posts' => '{{blog}}', |
|
204 | - 'blogdescription' => esc_html__( 'LSX starter content example', 'lsx' ), |
|
205 | - ), |
|
206 | - |
|
207 | - 'nav_menus' => array( |
|
208 | - 'primary' => array( |
|
209 | - 'name' => esc_html__( 'Primary Menu', 'lsx' ), |
|
210 | - |
|
211 | - 'items' => array( |
|
212 | - 'page_home', |
|
213 | - 'page_about', |
|
214 | - 'page_blog', |
|
215 | - 'page_contact', |
|
216 | - ), |
|
217 | - ), |
|
218 | - |
|
219 | - 'top-menu' => array( |
|
220 | - 'name' => esc_html__( 'Top Menu', 'lsx' ), |
|
221 | - |
|
222 | - 'items' => array( |
|
223 | - 'custom_link_1' => array( |
|
224 | - 'title' => 'View Map', |
|
225 | - 'url' => 'https://www.google.com/maps/place/LightSpeed+WordPress+Development/@-33.92945,18.45345,17z/data=!3m1!4b1!4m2!3m1!1s0x1dcc5da1b2446d25:0xc8ecdb1cc8afd170', |
|
226 | - 'classes' => 'map', |
|
227 | - ), |
|
228 | - |
|
229 | - 'custom_link_2' => array( |
|
230 | - 'title' => '+27 21 448 9843', |
|
231 | - 'url' => 'tel:+27214489843', |
|
232 | - 'classes' => 'tel', |
|
233 | - ), |
|
234 | - |
|
235 | - 'custom_link_3' => array( |
|
236 | - 'title' => '[email protected]', |
|
237 | - 'url' => 'mailto:[email protected]', |
|
238 | - 'classes' => 'email', |
|
239 | - ), |
|
240 | - |
|
241 | - 'page_contact' => array( |
|
242 | - 'classes' => 'cta', |
|
243 | - ), |
|
244 | - ), |
|
245 | - ), |
|
246 | - |
|
247 | - 'social' => array( |
|
248 | - 'name' => esc_html__( 'Social Menu', 'lsx' ), |
|
249 | - |
|
250 | - 'items' => array( |
|
251 | - 'link_facebook', |
|
252 | - 'link_foursquare', |
|
253 | - 'link_github', |
|
254 | - 'link_instagram', |
|
255 | - 'link_linkedin', |
|
256 | - 'link_pinterest', |
|
257 | - 'link_twitter', |
|
258 | - 'link_youtube', |
|
259 | - ), |
|
260 | - ), |
|
261 | - |
|
262 | - 'footer' => array( |
|
263 | - 'name' => esc_html__( 'Footer Menu', 'lsx' ), |
|
264 | - |
|
265 | - 'items' => array( |
|
266 | - 'page_about', |
|
267 | - 'page_contact', |
|
268 | - ), |
|
269 | - ), |
|
270 | - ), |
|
271 | - |
|
272 | - 'theme_mods' => array( |
|
273 | - 'lsx_header_fixed' => true, |
|
274 | - 'lsx_header_search' => false, |
|
275 | - 'lsx_layout' => '1c', |
|
276 | - ), |
|
277 | - ) ); |
|
278 | - } |
|
91 | + // add_theme_support( 'woocommerce' );. |
|
92 | + add_theme_support( 'starter-content', array( |
|
93 | + 'widgets' => array( |
|
94 | + 'sidebar-home' => array( |
|
95 | + 'custom_widget_1' => array( |
|
96 | + 'text', |
|
97 | + |
|
98 | + array( |
|
99 | + 'title' => '', |
|
100 | + 'text' => wp_kses_post( '<div class="row"><div class="col-sm-12 text-center"><h3>Build your perfect website <small>with the LSX theme</small></h3></div></div><div class="row"><div class="col-sm-4 text-center"><h4>Fast</h4><p>"Quick" isn\'t a word most people use when describing their website building experience.</p></div><div class="col-sm-4 text-center"><h4>Easy</h4><p>We\'ve built websites for countless clients, and we know what kind of back-end makes sense easily.</p></div><div class="col-sm-4 text-center"><h4>Comprehensive</h4><p>The LSX extensions come with features out the box that are essential.</p></div></div>' ), |
|
101 | + ), |
|
102 | + ), |
|
103 | + |
|
104 | + 'custom_widget_2' => array( |
|
105 | + 'text', |
|
106 | + |
|
107 | + array( |
|
108 | + 'title' => '', |
|
109 | + 'text' => wp_kses_post( '<div class="lsx-full-width-alt"><div class="row"><div class="col-xs-12"><h3>A big CTA title</h3><p class="text-center"><a class="btn cta-btn" href="http://www.lsdeb.biz/" target="_blank" rel="noreferrer noopener">Hire Us</a><p></div></div></div>' ), |
|
110 | + ), |
|
111 | + ), |
|
112 | + |
|
113 | + 'custom_widget_3' => array( |
|
114 | + 'text', |
|
115 | + |
|
116 | + array( |
|
117 | + 'title' => '', |
|
118 | + 'text' => wp_kses_post( '<div class="row"><div class="col-xs-12"><h3>Homepage Widget</h3><p>Lorem ipsum dolor sit amet, <a href="#">consectetuer adipiscing elit</a>. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis. Suspendisse urna nibh, viverra non, semper suscipit, posuere a, pede.</p></div></div>' ), |
|
119 | + ), |
|
120 | + ), |
|
121 | + ), |
|
122 | + |
|
123 | + 'sidebar-footer' => array( |
|
124 | + 'custom_widget_1' => array( |
|
125 | + 'text', |
|
126 | + |
|
127 | + array( |
|
128 | + 'title' => esc_html__( 'Space for Footer Widgets', 'lsx' ), |
|
129 | + 'text' => esc_html__( 'This is here to showcase some footer widgets. You can decide what to add and what to hide. Nam nostrum evertitur ad, ut pri nibh veniam, urbanitas definitionem eum ex.', 'lsx' ), |
|
130 | + ), |
|
131 | + ), |
|
132 | + |
|
133 | + 'custom_widget_2' => array( |
|
134 | + 'text', |
|
135 | + |
|
136 | + array( |
|
137 | + 'title' => esc_html__( 'Space for Footer Widgets', 'lsx' ), |
|
138 | + 'text' => esc_html__( 'This is here to showcase some footer widgets. You can decide what to add and what to hide. Nam nostrum evertitur ad, ut pri nibh veniam, urbanitas definitionem eum ex.', 'lsx' ), |
|
139 | + ), |
|
140 | + ), |
|
141 | + |
|
142 | + 'custom_widget_3' => array( |
|
143 | + 'text', |
|
144 | + |
|
145 | + array( |
|
146 | + 'title' => esc_html__( 'Contact us:', 'lsx' ), |
|
147 | + 'text' => wp_kses_post( '<a href="mailto:[email protected]><i class="fa fa-envelope fa-fw"></i> [email protected]</a><br><a href="tel:+27214489843"><i class="fa fa-phone fa-fw"></i> +27 21 448 9843</a><br><i class="fa fa-skype fa-fw"></i> /lightspeeddevelopment' ), |
|
148 | + ), |
|
149 | + ), |
|
150 | + ), |
|
151 | + |
|
152 | + 'sidebar-footer-cta' => array( |
|
153 | + 'custom_widget_1' => array( |
|
154 | + 'text', |
|
155 | + |
|
156 | + array( |
|
157 | + 'title' => esc_html__( 'A Footer Call to Action', 'lsx' ), |
|
158 | + 'text' => esc_html__( 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis. Suspendisse urna nibh, viverra non, semper suscipit, posuere a, pede.', 'lsx' ), |
|
159 | + ), |
|
160 | + ), |
|
161 | + ), |
|
162 | + ), |
|
163 | + |
|
164 | + 'posts' => array( |
|
165 | + 'home' => array( |
|
166 | + 'template' => 'page-templates/template-front-page.php', |
|
167 | + 'thumbnail' => '{{image-banner-example-01}}', |
|
168 | + 'post_title' => esc_html__( 'LSX is a free WordPress theme', 'lsx' ), |
|
169 | + 'post_content' => '', |
|
170 | + ), |
|
171 | + |
|
172 | + 'about' => array( |
|
173 | + 'thumbnail' => '{{image-banner-example-02}}', |
|
174 | + ), |
|
175 | + |
|
176 | + 'blog', |
|
177 | + |
|
178 | + 'contact' => array( |
|
179 | + 'thumbnail' => '{{image-banner-example-03}}', |
|
180 | + ), |
|
181 | + ), |
|
182 | + |
|
183 | + 'attachments' => array( |
|
184 | + 'image-banner-example-01' => array( |
|
185 | + 'post_title' => esc_html_x( 'Banner Example 01', 'Theme starter content', 'lsx' ), |
|
186 | + 'file' => 'assets/images/admin/banner-example-01.jpg', |
|
187 | + ), |
|
188 | + |
|
189 | + 'image-banner-example-02' => array( |
|
190 | + 'post_title' => esc_html_x( 'Banner Example 02', 'Theme starter content', 'lsx' ), |
|
191 | + 'file' => 'assets/images/admin/banner-example-02.jpg', |
|
192 | + ), |
|
193 | + |
|
194 | + 'image-banner-example-03' => array( |
|
195 | + 'post_title' => esc_html_x( 'Banner Example 03', 'Theme starter content', 'lsx' ), |
|
196 | + 'file' => 'assets/images/admin/banner-example-03.jpg', |
|
197 | + ), |
|
198 | + ), |
|
199 | + |
|
200 | + 'options' => array( |
|
201 | + 'show_on_front' => 'page', |
|
202 | + 'page_on_front' => '{{home}}', |
|
203 | + 'page_for_posts' => '{{blog}}', |
|
204 | + 'blogdescription' => esc_html__( 'LSX starter content example', 'lsx' ), |
|
205 | + ), |
|
206 | + |
|
207 | + 'nav_menus' => array( |
|
208 | + 'primary' => array( |
|
209 | + 'name' => esc_html__( 'Primary Menu', 'lsx' ), |
|
210 | + |
|
211 | + 'items' => array( |
|
212 | + 'page_home', |
|
213 | + 'page_about', |
|
214 | + 'page_blog', |
|
215 | + 'page_contact', |
|
216 | + ), |
|
217 | + ), |
|
218 | + |
|
219 | + 'top-menu' => array( |
|
220 | + 'name' => esc_html__( 'Top Menu', 'lsx' ), |
|
221 | + |
|
222 | + 'items' => array( |
|
223 | + 'custom_link_1' => array( |
|
224 | + 'title' => 'View Map', |
|
225 | + 'url' => 'https://www.google.com/maps/place/LightSpeed+WordPress+Development/@-33.92945,18.45345,17z/data=!3m1!4b1!4m2!3m1!1s0x1dcc5da1b2446d25:0xc8ecdb1cc8afd170', |
|
226 | + 'classes' => 'map', |
|
227 | + ), |
|
228 | + |
|
229 | + 'custom_link_2' => array( |
|
230 | + 'title' => '+27 21 448 9843', |
|
231 | + 'url' => 'tel:+27214489843', |
|
232 | + 'classes' => 'tel', |
|
233 | + ), |
|
234 | + |
|
235 | + 'custom_link_3' => array( |
|
236 | + 'title' => '[email protected]', |
|
237 | + 'url' => 'mailto:[email protected]', |
|
238 | + 'classes' => 'email', |
|
239 | + ), |
|
240 | + |
|
241 | + 'page_contact' => array( |
|
242 | + 'classes' => 'cta', |
|
243 | + ), |
|
244 | + ), |
|
245 | + ), |
|
246 | + |
|
247 | + 'social' => array( |
|
248 | + 'name' => esc_html__( 'Social Menu', 'lsx' ), |
|
249 | + |
|
250 | + 'items' => array( |
|
251 | + 'link_facebook', |
|
252 | + 'link_foursquare', |
|
253 | + 'link_github', |
|
254 | + 'link_instagram', |
|
255 | + 'link_linkedin', |
|
256 | + 'link_pinterest', |
|
257 | + 'link_twitter', |
|
258 | + 'link_youtube', |
|
259 | + ), |
|
260 | + ), |
|
261 | + |
|
262 | + 'footer' => array( |
|
263 | + 'name' => esc_html__( 'Footer Menu', 'lsx' ), |
|
264 | + |
|
265 | + 'items' => array( |
|
266 | + 'page_about', |
|
267 | + 'page_contact', |
|
268 | + ), |
|
269 | + ), |
|
270 | + ), |
|
271 | + |
|
272 | + 'theme_mods' => array( |
|
273 | + 'lsx_header_fixed' => true, |
|
274 | + 'lsx_header_search' => false, |
|
275 | + 'lsx_layout' => '1c', |
|
276 | + ), |
|
277 | + ) ); |
|
278 | + } |
|
279 | 279 | |
280 | 280 | endif; |
281 | 281 | |
@@ -283,21 +283,21 @@ discard block |
||
283 | 283 | |
284 | 284 | if ( ! function_exists( 'lsx_init' ) ) : |
285 | 285 | |
286 | - /** |
|
287 | - * Theme init action. |
|
288 | - * |
|
289 | - * @package lsx |
|
290 | - * @subpackage config |
|
291 | - */ |
|
292 | - function lsx_init() { |
|
293 | - add_post_type_support( 'page', 'excerpt' ); |
|
286 | + /** |
|
287 | + * Theme init action. |
|
288 | + * |
|
289 | + * @package lsx |
|
290 | + * @subpackage config |
|
291 | + */ |
|
292 | + function lsx_init() { |
|
293 | + add_post_type_support( 'page', 'excerpt' ); |
|
294 | 294 | |
295 | - if ( class_exists( 'WooCommerce' ) ) { |
|
296 | - remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20 ); |
|
297 | - } |
|
295 | + if ( class_exists( 'WooCommerce' ) ) { |
|
296 | + remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20 ); |
|
297 | + } |
|
298 | 298 | |
299 | - remove_action( 'comment_form', 'wp_comment_form_unfiltered_html_nonce', 10 ); |
|
300 | - } |
|
299 | + remove_action( 'comment_form', 'wp_comment_form_unfiltered_html_nonce', 10 ); |
|
300 | + } |
|
301 | 301 | |
302 | 302 | endif; |
303 | 303 | |
@@ -305,19 +305,19 @@ discard block |
||
305 | 305 | |
306 | 306 | if ( ! function_exists( 'lsx_process_content_width' ) ) : |
307 | 307 | |
308 | - /** |
|
309 | - * Overwrite the $content_width var, based on the layout of the page. |
|
310 | - * |
|
311 | - * @package lsx |
|
312 | - * @subpackage config |
|
313 | - */ |
|
314 | - function lsx_process_content_width() { |
|
315 | - global $content_width; |
|
308 | + /** |
|
309 | + * Overwrite the $content_width var, based on the layout of the page. |
|
310 | + * |
|
311 | + * @package lsx |
|
312 | + * @subpackage config |
|
313 | + */ |
|
314 | + function lsx_process_content_width() { |
|
315 | + global $content_width; |
|
316 | 316 | |
317 | - if ( is_page_template( 'page-templates/template-front-page.php' ) ) { |
|
318 | - $content_width = 1140; |
|
319 | - } |
|
320 | - } |
|
317 | + if ( is_page_template( 'page-templates/template-front-page.php' ) ) { |
|
318 | + $content_width = 1140; |
|
319 | + } |
|
320 | + } |
|
321 | 321 | |
322 | 322 | endif; |
323 | 323 | |
@@ -325,31 +325,31 @@ discard block |
||
325 | 325 | |
326 | 326 | if ( ! function_exists( 'lsx_file_get_contents' ) ) : |
327 | 327 | |
328 | - /** |
|
329 | - * Get file contents. |
|
330 | - * |
|
331 | - * @package lsx |
|
332 | - * @subpackage config |
|
333 | - */ |
|
334 | - function lsx_file_get_contents( $file ) { |
|
335 | - if ( file_exists( $file ) ) { |
|
336 | - global $wp_filesystem; |
|
337 | - |
|
338 | - if ( empty( $wp_filesystem ) ) { |
|
339 | - require_once ABSPATH . 'wp-admin/includes/file.php'; |
|
340 | - WP_Filesystem(); |
|
341 | - } |
|
342 | - |
|
343 | - if ( $wp_filesystem ) { |
|
344 | - $contents = $wp_filesystem->get_contents( $file ); |
|
345 | - |
|
346 | - if ( ! empty( $contents ) ) { |
|
347 | - return $contents; |
|
348 | - } |
|
349 | - } |
|
350 | - } |
|
351 | - |
|
352 | - return ''; |
|
353 | - } |
|
328 | + /** |
|
329 | + * Get file contents. |
|
330 | + * |
|
331 | + * @package lsx |
|
332 | + * @subpackage config |
|
333 | + */ |
|
334 | + function lsx_file_get_contents( $file ) { |
|
335 | + if ( file_exists( $file ) ) { |
|
336 | + global $wp_filesystem; |
|
337 | + |
|
338 | + if ( empty( $wp_filesystem ) ) { |
|
339 | + require_once ABSPATH . 'wp-admin/includes/file.php'; |
|
340 | + WP_Filesystem(); |
|
341 | + } |
|
342 | + |
|
343 | + if ( $wp_filesystem ) { |
|
344 | + $contents = $wp_filesystem->get_contents( $file ); |
|
345 | + |
|
346 | + if ( ! empty( $contents ) ) { |
|
347 | + return $contents; |
|
348 | + } |
|
349 | + } |
|
350 | + } |
|
351 | + |
|
352 | + return ''; |
|
353 | + } |
|
354 | 354 | |
355 | 355 | endif; |
@@ -10,36 +10,36 @@ discard block |
||
10 | 10 | * WooCommerce Order Delivery Date |
11 | 11 | */ |
12 | 12 | if ( function_exists( 'wc_od_get_delivery_date_field_args' ) ) { |
13 | - /** |
|
14 | - * Change the arguments for the checkout delivery date field. |
|
15 | - * |
|
16 | - * @package lsx |
|
17 | - * @subpackage woocommerce |
|
18 | - * @param $args array |
|
19 | - * @return array |
|
20 | - */ |
|
21 | - function lsx_wc_delivery_date_args( $args = array(), $context ) { |
|
22 | - if ( 'checkout' === $context ) { |
|
23 | - $args['label'] = _x( 'Date', 'Delivery date checkout field label', 'lsx' ); |
|
24 | - } |
|
25 | - return $args; |
|
26 | - } |
|
27 | - add_filter( 'wc_od_delivery_date_field_args', 'lsx_wc_delivery_date_args', 10, 2 ); |
|
13 | + /** |
|
14 | + * Change the arguments for the checkout delivery date field. |
|
15 | + * |
|
16 | + * @package lsx |
|
17 | + * @subpackage woocommerce |
|
18 | + * @param $args array |
|
19 | + * @return array |
|
20 | + */ |
|
21 | + function lsx_wc_delivery_date_args( $args = array(), $context ) { |
|
22 | + if ( 'checkout' === $context ) { |
|
23 | + $args['label'] = _x( 'Date', 'Delivery date checkout field label', 'lsx' ); |
|
24 | + } |
|
25 | + return $args; |
|
26 | + } |
|
27 | + add_filter( 'wc_od_delivery_date_field_args', 'lsx_wc_delivery_date_args', 10, 2 ); |
|
28 | 28 | |
29 | - /** |
|
30 | - * Change the title of the shipping and delivery title. |
|
31 | - * |
|
32 | - * @package lsx |
|
33 | - * @subpackage woocommerce |
|
34 | - * @param $args array |
|
35 | - * @return array |
|
36 | - */ |
|
37 | - function lsx_wc_delivery_details_args( $args = array() ) { |
|
38 | - $args['title'] = _x( 'Collection or Delivery Time-slot', 'Delivery date title on checkout', 'lsx' ); |
|
39 | - return $args; |
|
40 | - } |
|
41 | - add_filter( 'wc_od_order_delivery_details_args', 'lsx_wc_delivery_details_args', 10, 1 ); |
|
42 | - add_filter( 'wc_od_checkout_delivery_details_args', 'lsx_wc_delivery_details_args', 10, 1 ); |
|
29 | + /** |
|
30 | + * Change the title of the shipping and delivery title. |
|
31 | + * |
|
32 | + * @package lsx |
|
33 | + * @subpackage woocommerce |
|
34 | + * @param $args array |
|
35 | + * @return array |
|
36 | + */ |
|
37 | + function lsx_wc_delivery_details_args( $args = array() ) { |
|
38 | + $args['title'] = _x( 'Collection or Delivery Time-slot', 'Delivery date title on checkout', 'lsx' ); |
|
39 | + return $args; |
|
40 | + } |
|
41 | + add_filter( 'wc_od_order_delivery_details_args', 'lsx_wc_delivery_details_args', 10, 1 ); |
|
42 | + add_filter( 'wc_od_checkout_delivery_details_args', 'lsx_wc_delivery_details_args', 10, 1 ); |
|
43 | 43 | } |
44 | 44 | |
45 | 45 | /** |
@@ -47,33 +47,33 @@ discard block |
||
47 | 47 | */ |
48 | 48 | |
49 | 49 | if ( class_exists( 'WC_Points_Rewards' ) ) { |
50 | - /** |
|
51 | - * Adds a div around the Points and rewards message. |
|
52 | - * |
|
53 | - * @param string $message |
|
54 | - * @param string $option |
|
55 | - * @return string |
|
56 | - */ |
|
57 | - function lsx_wc_points_message_div( $message = '', $option = '' ) { |
|
58 | - if ( '' !== $message ) { |
|
59 | - $message = '<div class="lsx-woocommerce-message-text">' . $message . '</div>'; |
|
60 | - } |
|
61 | - return $message; |
|
62 | - } |
|
63 | - add_filter( 'option_wc_points_rewards_redeem_points_message', 'lsx_wc_points_message_div', 10, 2 ); |
|
50 | + /** |
|
51 | + * Adds a div around the Points and rewards message. |
|
52 | + * |
|
53 | + * @param string $message |
|
54 | + * @param string $option |
|
55 | + * @return string |
|
56 | + */ |
|
57 | + function lsx_wc_points_message_div( $message = '', $option = '' ) { |
|
58 | + if ( '' !== $message ) { |
|
59 | + $message = '<div class="lsx-woocommerce-message-text">' . $message . '</div>'; |
|
60 | + } |
|
61 | + return $message; |
|
62 | + } |
|
63 | + add_filter( 'option_wc_points_rewards_redeem_points_message', 'lsx_wc_points_message_div', 10, 2 ); |
|
64 | 64 | |
65 | - /** |
|
66 | - * Adds in the lsx wrapper class. |
|
67 | - * |
|
68 | - * @param string $message |
|
69 | - * @param boolean $discount_available |
|
70 | - * @return string |
|
71 | - */ |
|
72 | - function lsx_wc_points_message_div_wrapper_class( $message = '', $discount_available ) { |
|
73 | - if ( '' !== $message ) { |
|
74 | - $message = str_replace( 'wc_points_redeem_earn_points', 'wc_points_redeem_earn_points woocommerce-message lsx-woocommerce-message-wrap', $message ); |
|
75 | - } |
|
76 | - return $message; |
|
77 | - } |
|
78 | - add_filter( 'wc_points_rewards_redeem_points_message', 'lsx_wc_points_message_div_wrapper_class', 10, 2 ); |
|
65 | + /** |
|
66 | + * Adds in the lsx wrapper class. |
|
67 | + * |
|
68 | + * @param string $message |
|
69 | + * @param boolean $discount_available |
|
70 | + * @return string |
|
71 | + */ |
|
72 | + function lsx_wc_points_message_div_wrapper_class( $message = '', $discount_available ) { |
|
73 | + if ( '' !== $message ) { |
|
74 | + $message = str_replace( 'wc_points_redeem_earn_points', 'wc_points_redeem_earn_points woocommerce-message lsx-woocommerce-message-wrap', $message ); |
|
75 | + } |
|
76 | + return $message; |
|
77 | + } |
|
78 | + add_filter( 'wc_points_rewards_redeem_points_message', 'lsx_wc_points_message_div_wrapper_class', 10, 2 ); |
|
79 | 79 | } |
@@ -8,34 +8,34 @@ |
||
8 | 8 | */ |
9 | 9 | |
10 | 10 | if ( ! defined( 'ABSPATH' ) ) { |
11 | - exit; |
|
11 | + exit; |
|
12 | 12 | } |
13 | 13 | |
14 | 14 | define( 'LSX_VERSION', '2.9.5' ); |
15 | 15 | |
16 | 16 | if ( in_array( 'wordpress-seo/wp-seo.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) || in_array( 'wordpress-seo-premium/wp-seo-premium.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) { |
17 | - require get_template_directory() . '/includes/yoast/class-lsx-yoast.php'; |
|
17 | + require get_template_directory() . '/includes/yoast/class-lsx-yoast.php'; |
|
18 | 18 | } |
19 | 19 | |
20 | 20 | if ( class_exists( 'WooCommerce' ) ) { |
21 | - require get_template_directory() . '/includes/woocommerce/woocommerce.php'; |
|
22 | - require get_template_directory() . '/includes/woocommerce/addons.php'; |
|
21 | + require get_template_directory() . '/includes/woocommerce/woocommerce.php'; |
|
22 | + require get_template_directory() . '/includes/woocommerce/addons.php'; |
|
23 | 23 | } |
24 | 24 | |
25 | 25 | if ( class_exists( 'Tribe__Events__Main' ) ) { |
26 | - require get_template_directory() . '/includes/the-events-calendar/the-events-calendar.php'; |
|
26 | + require get_template_directory() . '/includes/the-events-calendar/the-events-calendar.php'; |
|
27 | 27 | } |
28 | 28 | |
29 | 29 | if ( class_exists( 'Sensei_Main' ) || class_exists( 'Sensei_WC' ) ) { |
30 | - require get_template_directory() . '/includes/sensei/class-lsx-sensei.php'; |
|
30 | + require get_template_directory() . '/includes/sensei/class-lsx-sensei.php'; |
|
31 | 31 | } |
32 | 32 | |
33 | 33 | if ( class_exists( 'Popup_Maker' ) ) { |
34 | - require get_template_directory() . '/includes/popup-maker/class-lsx-popup-maker.php'; |
|
34 | + require get_template_directory() . '/includes/popup-maker/class-lsx-popup-maker.php'; |
|
35 | 35 | } |
36 | 36 | |
37 | 37 | if ( class_exists( 'bbPress' ) ) { |
38 | - require get_template_directory() . '/includes/bbpress/bbpress.php'; |
|
38 | + require get_template_directory() . '/includes/bbpress/bbpress.php'; |
|
39 | 39 | } |
40 | 40 | |
41 | 41 | require get_template_directory() . '/includes/config.php'; |
@@ -10,38 +10,38 @@ discard block |
||
10 | 10 | <?php lsx_entry_before(); ?> |
11 | 11 | |
12 | 12 | <?php |
13 | - $no_thumb_post_types = array( |
|
14 | - 'audio' => 'audio', |
|
15 | - 'gallery' => 'gallery', |
|
16 | - 'image' => 'image', |
|
17 | - 'link' => 'link', |
|
18 | - 'quote' => 'quote', |
|
19 | - 'video' => 'video', |
|
20 | - ); |
|
21 | - $no_thumb_post_formats = apply_filters( 'lsx_no_thumb_post_formats', $no_thumb_post_types ); |
|
22 | - |
|
23 | - $has_thumb = has_post_thumbnail() && ! has_post_format( $no_thumb_post_formats ); |
|
24 | - |
|
25 | - if ( $has_thumb ) { |
|
26 | - $thumb_class = 'has-thumb'; |
|
27 | - } else { |
|
28 | - $thumb_class = 'no-thumb'; |
|
29 | - } |
|
30 | - |
|
31 | - $blog_layout = apply_filters( 'lsx_blog_layout', 'default' ); |
|
32 | - |
|
33 | - $image_class = ''; |
|
34 | - |
|
35 | - $thumbnail_id = get_post_thumbnail_id( get_the_ID() ); |
|
36 | - if ( empty( $thumbnail_id ) ) { |
|
37 | - $thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $thumbnail_id, get_the_ID() ); |
|
38 | - } |
|
39 | - $image_arr = wp_get_attachment_image_src( $thumbnail_id, 'lsx-thumbnail-single' ); |
|
40 | - $image_src = ''; |
|
41 | - |
|
42 | - if ( is_array( $image_arr ) ) { |
|
43 | - $image_src = $image_arr[0]; |
|
44 | - } |
|
13 | + $no_thumb_post_types = array( |
|
14 | + 'audio' => 'audio', |
|
15 | + 'gallery' => 'gallery', |
|
16 | + 'image' => 'image', |
|
17 | + 'link' => 'link', |
|
18 | + 'quote' => 'quote', |
|
19 | + 'video' => 'video', |
|
20 | + ); |
|
21 | + $no_thumb_post_formats = apply_filters( 'lsx_no_thumb_post_formats', $no_thumb_post_types ); |
|
22 | + |
|
23 | + $has_thumb = has_post_thumbnail() && ! has_post_format( $no_thumb_post_formats ); |
|
24 | + |
|
25 | + if ( $has_thumb ) { |
|
26 | + $thumb_class = 'has-thumb'; |
|
27 | + } else { |
|
28 | + $thumb_class = 'no-thumb'; |
|
29 | + } |
|
30 | + |
|
31 | + $blog_layout = apply_filters( 'lsx_blog_layout', 'default' ); |
|
32 | + |
|
33 | + $image_class = ''; |
|
34 | + |
|
35 | + $thumbnail_id = get_post_thumbnail_id( get_the_ID() ); |
|
36 | + if ( empty( $thumbnail_id ) ) { |
|
37 | + $thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $thumbnail_id, get_the_ID() ); |
|
38 | + } |
|
39 | + $image_arr = wp_get_attachment_image_src( $thumbnail_id, 'lsx-thumbnail-single' ); |
|
40 | + $image_src = ''; |
|
41 | + |
|
42 | + if ( is_array( $image_arr ) ) { |
|
43 | + $image_src = $image_arr[0]; |
|
44 | + } |
|
45 | 45 | ?> |
46 | 46 | |
47 | 47 | <article id="post-<?php the_ID(); ?>" <?php post_class( array( 'lsx-slot', $thumb_class ) ); ?>> |
@@ -59,23 +59,23 @@ discard block |
||
59 | 59 | <?php endif; ?> |
60 | 60 | |
61 | 61 | <?php |
62 | - $format = get_post_format(); |
|
62 | + $format = get_post_format(); |
|
63 | 63 | |
64 | - if ( false === $format ) { |
|
65 | - $format = 'standard'; |
|
66 | - $show_on_front = get_option( 'show_on_front', 'posts' ); |
|
64 | + if ( false === $format ) { |
|
65 | + $format = 'standard'; |
|
66 | + $show_on_front = get_option( 'show_on_front', 'posts' ); |
|
67 | 67 | |
68 | - if ( 'page' === $show_on_front ) { |
|
69 | - $archive_link = get_permalink( get_option( 'page_for_posts' ) ); |
|
70 | - } else { |
|
71 | - $archive_link = home_url(); |
|
72 | - } |
|
73 | - } else { |
|
74 | - $archive_link = get_post_format_link( $format ); |
|
75 | - } |
|
68 | + if ( 'page' === $show_on_front ) { |
|
69 | + $archive_link = get_permalink( get_option( 'page_for_posts' ) ); |
|
70 | + } else { |
|
71 | + $archive_link = home_url(); |
|
72 | + } |
|
73 | + } else { |
|
74 | + $archive_link = get_post_format_link( $format ); |
|
75 | + } |
|
76 | 76 | |
77 | - $format = lsx_translate_format_to_fontawesome( $format ); |
|
78 | - ?> |
|
77 | + $format = lsx_translate_format_to_fontawesome( $format ); |
|
78 | + ?> |
|
79 | 79 | |
80 | 80 | <h1 class="entry-title"> |
81 | 81 | <?php if ( has_post_thumbnail() ) : ?> |
@@ -109,20 +109,20 @@ discard block |
||
109 | 109 | |
110 | 110 | <div class="entry-summary"> |
111 | 111 | <?php |
112 | - if ( false === apply_filters( 'lsx_disable_content_excerpt', false ) ) { |
|
113 | - if ( ! has_excerpt() ) { |
|
114 | - $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>'; |
|
115 | - $content = wp_trim_words( strip_shortcodes( get_the_content() ), 30 ); |
|
116 | - $content = '<p>' . $content . '</p>' . $excerpt_more; |
|
117 | - echo wp_kses_post( $content ); |
|
118 | - } else { |
|
119 | - the_excerpt(); |
|
120 | - } |
|
121 | - } else { |
|
122 | - $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>'; |
|
123 | - echo wp_kses_post( $excerpt_more ); |
|
124 | - } |
|
125 | - ?> |
|
112 | + if ( false === apply_filters( 'lsx_disable_content_excerpt', false ) ) { |
|
113 | + if ( ! has_excerpt() ) { |
|
114 | + $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>'; |
|
115 | + $content = wp_trim_words( strip_shortcodes( get_the_content() ), 30 ); |
|
116 | + $content = '<p>' . $content . '</p>' . $excerpt_more; |
|
117 | + echo wp_kses_post( $content ); |
|
118 | + } else { |
|
119 | + the_excerpt(); |
|
120 | + } |
|
121 | + } else { |
|
122 | + $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>'; |
|
123 | + echo wp_kses_post( $excerpt_more ); |
|
124 | + } |
|
125 | + ?> |
|
126 | 126 | |
127 | 127 | </div><!-- .entry-summary --> |
128 | 128 | |
@@ -138,15 +138,15 @@ discard block |
||
138 | 138 | |
139 | 139 | <div class="entry-content"> |
140 | 140 | <?php |
141 | - the_content(); |
|
142 | - |
|
143 | - wp_link_pages( array( |
|
144 | - 'before' => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">', |
|
145 | - 'after' => '</div></div>', |
|
146 | - 'link_before' => '<span>', |
|
147 | - 'link_after' => '</span>', |
|
148 | - ) ); |
|
149 | - ?> |
|
141 | + the_content(); |
|
142 | + |
|
143 | + wp_link_pages( array( |
|
144 | + 'before' => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">', |
|
145 | + 'after' => '</div></div>', |
|
146 | + 'link_before' => '<span>', |
|
147 | + 'link_after' => '</span>', |
|
148 | + ) ); |
|
149 | + ?> |
|
150 | 150 | </div><!-- .entry-content --> |
151 | 151 | |
152 | 152 | <?php endif; ?> |
@@ -166,22 +166,22 @@ discard block |
||
166 | 166 | <div class="post-comments"> |
167 | 167 | <a href="<?php the_permalink(); ?>#comments"> |
168 | 168 | <?php |
169 | - if ( '1' === $comments_number ) { |
|
170 | - echo esc_html_x( 'One Comment', 'content.php', 'lsx' ); |
|
171 | - } else { |
|
172 | - printf( |
|
173 | - /* Translators: %s: number of comments */ |
|
174 | - esc_html( _nx( |
|
175 | - '%s Comment', |
|
176 | - '%s Comments', |
|
177 | - $comments_number, |
|
178 | - 'content.php', |
|
179 | - 'lsx' |
|
180 | - ) ), |
|
181 | - esc_html( number_format_i18n( $comments_number ) ) |
|
182 | - ); |
|
183 | - } |
|
184 | - ?> |
|
169 | + if ( '1' === $comments_number ) { |
|
170 | + echo esc_html_x( 'One Comment', 'content.php', 'lsx' ); |
|
171 | + } else { |
|
172 | + printf( |
|
173 | + /* Translators: %s: number of comments */ |
|
174 | + esc_html( _nx( |
|
175 | + '%s Comment', |
|
176 | + '%s Comments', |
|
177 | + $comments_number, |
|
178 | + 'content.php', |
|
179 | + 'lsx' |
|
180 | + ) ), |
|
181 | + esc_html( number_format_i18n( $comments_number ) ) |
|
182 | + ); |
|
183 | + } |
|
184 | + ?> |
|
185 | 185 | </a> |
186 | 186 | </div> |
187 | 187 | <?php endif ?> |
@@ -7,301 +7,301 @@ discard block |
||
7 | 7 | */ |
8 | 8 | |
9 | 9 | if ( ! defined( 'ABSPATH' ) ) { |
10 | - exit; |
|
10 | + exit; |
|
11 | 11 | } |
12 | 12 | |
13 | 13 | if ( ! class_exists( 'LSX_Sensei' ) ) : |
14 | 14 | |
15 | - /** |
|
16 | - * The LSX Sensei integration class |
|
17 | - */ |
|
18 | - class LSX_Sensei { |
|
15 | + /** |
|
16 | + * The LSX Sensei integration class |
|
17 | + */ |
|
18 | + class LSX_Sensei { |
|
19 | 19 | |
20 | - /** |
|
21 | - * Holds class instance |
|
22 | - * |
|
23 | - * @since 1.0.0 |
|
24 | - * @var object |
|
25 | - */ |
|
26 | - protected static $instance = null; |
|
20 | + /** |
|
21 | + * Holds class instance |
|
22 | + * |
|
23 | + * @since 1.0.0 |
|
24 | + * @var object |
|
25 | + */ |
|
26 | + protected static $instance = null; |
|
27 | 27 | |
28 | - /** |
|
29 | - * Holds the LSX_Sensei_Course() variable. |
|
30 | - * |
|
31 | - * @var LSX_Sensei_Course() |
|
32 | - */ |
|
33 | - public $lsx_sensei_course = false; |
|
34 | - |
|
35 | - /** |
|
36 | - * Holds the LSX_Sensei_Lesson() variable. |
|
37 | - * |
|
38 | - * @var LSX_Sensei_Lesson() |
|
39 | - */ |
|
40 | - public $lsx_sensei_lesson = false; |
|
41 | - |
|
42 | - /** |
|
43 | - * Setup class. |
|
44 | - * |
|
45 | - * @since 1.0 |
|
46 | - */ |
|
47 | - public function __construct() { |
|
48 | - $this->lsx_sensei_course = require_once get_template_directory() . '/includes/sensei/class-lsx-sensei-course.php'; |
|
49 | - $this->lsx_sensei_lesson = require_once get_template_directory() . '/includes/sensei/class-lsx-sensei-lesson.php'; |
|
50 | - |
|
51 | - global $woothemes_sensei; |
|
52 | - |
|
53 | - add_action( 'wp_enqueue_scripts', array( $this, 'lsx_sensei_scripts_add_styles' ) ); |
|
54 | - |
|
55 | - remove_action( 'sensei_before_main_content', array( $woothemes_sensei->frontend, 'sensei_output_content_wrapper' ), 10 ); |
|
56 | - add_action( 'sensei_before_main_content', array( $this, 'lsx_sensei_theme_wrapper_start' ) ); |
|
57 | - |
|
58 | - remove_action( 'sensei_after_main_content', array( $woothemes_sensei->frontend, 'sensei_output_content_wrapper_end' ), 10 ); |
|
59 | - add_action( 'sensei_after_main_content', array( $this, 'lsx_sensei_theme_wrapper_end' ) ); |
|
60 | - |
|
61 | - add_filter( 'get_the_archive_title', array( $this, 'lsx_sensei_modify_archive_title' ), 99, 1 ); |
|
62 | - |
|
63 | - add_filter( 'lsx_banner_allowed_post_types', array( $this, 'lsx_banner_allowed_post_types_sensei' ) ); |
|
64 | - |
|
65 | - // LSX. |
|
66 | - add_filter( 'lsx_global_header_disable', array( $this, 'lsx_sensei_disable_lsx_banner' ) ); |
|
67 | - // LSX Banners - Plugin, Placeholders. |
|
68 | - add_filter( 'lsx_banner_plugin_disable', array( $this, 'lsx_sensei_disable_lsx_banner' ) ); |
|
69 | - // LSX Banners - Banner. |
|
70 | - add_filter( 'lsx_banner_disable', array( $this, 'lsx_sensei_disable_lsx_banner' ) ); |
|
71 | - |
|
72 | - add_filter( 'course_archive_title', array( $this, 'lsx_sensei_archive_title' ), 10, 1 ); |
|
73 | - add_filter( 'sensei_lesson_archive_title', array( $this, 'lsx_sensei_archive_title' ), 10, 1 ); |
|
74 | - |
|
75 | - add_filter( 'course_category_title', array( $this, 'lsx_sensei_category_title' ), 10, 1 ); |
|
76 | - |
|
77 | - add_action( 'sensei_course_content_inside_after', array( $this, 'lsx_sensei_add_buttons' ), 9 ); |
|
78 | - |
|
79 | - add_filter( 'sensei_wc_paid_courses_add_to_cart_button_text', array( $this, 'lsx_sensei_add_to_cart_text' ) ); |
|
80 | - |
|
81 | - add_action( 'lsx_content_wrap_before', array( $this, 'lsx_sensei_results_header' ) ); |
|
82 | - |
|
83 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_course_breadcrumb_filter' ), 40, 1 ); |
|
84 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_course_breadcrumb_filter' ), 40, 1 ); |
|
85 | - |
|
86 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_lesson_breadcrumb_filter' ), 40, 1 ); |
|
87 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_lesson_breadcrumb_filter' ), 40, 1 ); |
|
88 | - |
|
89 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_module_breadcrumb_filter' ), 40, 1 ); |
|
90 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_module_breadcrumb_filter' ), 40, 1 ); |
|
91 | - |
|
92 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_learner_breadcrumb_filter' ), 40, 1 ); |
|
93 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_learner_breadcrumb_filter' ), 40, 1 ); |
|
94 | - |
|
95 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_quiz_breadcrumb_filter' ), 40, 1 ); |
|
96 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_quiz_breadcrumb_filter' ), 40, 1 ); |
|
97 | - |
|
98 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_messages_breadcrumb_filter' ), 40, 1 ); |
|
99 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_messages_breadcrumb_filter' ), 40, 1 ); |
|
100 | - |
|
101 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_single_message_breadcrumb_filter' ), 40, 1 ); |
|
102 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_single_message_breadcrumb_filter' ), 40, 1 ); |
|
103 | - |
|
104 | - add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_results_breadcrumb_filter' ), 40, 1 ); |
|
105 | - add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_results_breadcrumb_filter' ), 40, 1 ); |
|
106 | - |
|
107 | - add_action( 'sensei_archive_before_message_loop', array( $this, 'lsx_sensei_back_message_button' ) ); |
|
108 | - add_action( 'sensei_content_message_after', array( $this, 'lsx_sensei_view_message_button' ) ); |
|
109 | - |
|
110 | - } |
|
111 | - |
|
112 | - /** |
|
113 | - * Return an instance of this class. |
|
114 | - * |
|
115 | - * @since 1.0.0 |
|
116 | - * @return object A single instance of this class. |
|
117 | - */ |
|
118 | - public static function get_instance() { |
|
119 | - // If the single instance hasn't been set, set it now. |
|
120 | - if ( null === self::$instance ) { |
|
121 | - self::$instance = new self(); |
|
122 | - } |
|
123 | - return self::$instance; |
|
124 | - } |
|
125 | - |
|
126 | - /** |
|
127 | - * Sensei enqueue styles. |
|
128 | - * |
|
129 | - * @package lsx |
|
130 | - * @subpackage sensei |
|
131 | - */ |
|
132 | - public function lsx_sensei_scripts_add_styles() { |
|
133 | - wp_enqueue_style( 'sensei-lsx', get_template_directory_uri() . '/assets/css/sensei/sensei.css', array( 'lsx_main' ), LSX_VERSION ); |
|
134 | - wp_style_add_data( 'sensei-lsx', 'rtl', 'replace' ); |
|
135 | - } |
|
136 | - |
|
137 | - /** |
|
138 | - * Sensei wrapper start. |
|
139 | - * |
|
140 | - * @package lsx |
|
141 | - * @subpackage sensei |
|
142 | - */ |
|
143 | - public function lsx_sensei_theme_wrapper_start() { |
|
144 | - lsx_content_wrap_before(); |
|
145 | - echo '<div id="primary" class="content-area ' . esc_attr( lsx_main_class() ) . '">'; |
|
146 | - lsx_content_before(); |
|
147 | - lsx_content_top(); |
|
148 | - echo '<main id="main" class="site-main" role="main">'; |
|
149 | - } |
|
150 | - |
|
151 | - /** |
|
152 | - * Sensei wrapper end. |
|
153 | - * |
|
154 | - * @package lsx |
|
155 | - * @subpackage sensei |
|
156 | - */ |
|
157 | - public function lsx_sensei_theme_wrapper_end() { |
|
158 | - lsx_content_bottom(); |
|
159 | - echo '</main>'; |
|
160 | - lsx_content_after(); |
|
161 | - echo '</div>'; |
|
162 | - lsx_content_wrap_after(); |
|
163 | - } |
|
164 | - |
|
165 | - /** |
|
166 | - * Remove "Archives:" from the courses archive title. |
|
167 | - * |
|
168 | - * @param [type] $title |
|
169 | - * @return @title |
|
170 | - */ |
|
171 | - public function lsx_sensei_modify_archive_title( $title ) { |
|
172 | - if ( is_archive() && is_post_type_archive( 'course' ) ) { |
|
173 | - $title = __( 'Courses', 'lsx' ); |
|
174 | - } |
|
175 | - if ( is_archive() && is_post_type_archive( 'sensei_message' ) ) { |
|
176 | - $title = __( 'Messages', 'lsx' ); |
|
177 | - } |
|
178 | - if ( is_archive() && is_post_type_archive( 'lesson' ) ) { |
|
179 | - $title = __( 'Lessons', 'lsx' ); |
|
180 | - } |
|
181 | - if ( is_archive() && is_tax() ) { |
|
182 | - $title = single_term_title( '', false ); |
|
183 | - } |
|
184 | - return $title; |
|
185 | - } |
|
186 | - |
|
187 | - /** |
|
188 | - * Disable LSX Banners in some Sensei pages. |
|
189 | - * |
|
190 | - * @package lsx |
|
191 | - * @subpackage sensei |
|
192 | - */ |
|
193 | - public function lsx_sensei_disable_lsx_banner( $disabled ) { |
|
194 | - if ( is_sensei() && ( ! is_singular( 'lesson' ) ) ) { |
|
195 | - $disabled = true; |
|
196 | - } |
|
197 | - |
|
198 | - return $disabled; |
|
199 | - } |
|
200 | - |
|
201 | - /** |
|
202 | - * Enable project custom post type on LSX Banners. |
|
203 | - */ |
|
204 | - public function lsx_banner_allowed_post_types_sensei( $post_types ) { |
|
205 | - $post_types[] = 'lesson'; |
|
206 | - return $post_types; |
|
207 | - } |
|
208 | - |
|
209 | - /** |
|
210 | - * Filters the archive title. |
|
211 | - * |
|
212 | - * @package lsx |
|
213 | - * @subpackage sensei |
|
214 | - */ |
|
215 | - public function lsx_sensei_archive_title( $html ) { |
|
216 | - $html = preg_replace( '/<header class="archive-header"><h1>([^<]+)<\/h1><\/header>/i', '<h1>$1</h1>', $html ); |
|
217 | - return $html; |
|
218 | - } |
|
219 | - |
|
220 | - /** |
|
221 | - * Filters the archive title. |
|
222 | - * |
|
223 | - * @package lsx |
|
224 | - * @subpackage sensei |
|
225 | - */ |
|
226 | - public function lsx_sensei_category_title( $html ) { |
|
227 | - $html = str_replace( 'h2', 'h1', $html ); |
|
228 | - return $html; |
|
229 | - } |
|
230 | - |
|
231 | - /** |
|
232 | - * Add extra buttons to the single view on lists. |
|
233 | - * |
|
234 | - * @package lsx |
|
235 | - * @subpackage sensei |
|
236 | - */ |
|
237 | - public function lsx_sensei_add_buttons( $course_id ) { |
|
238 | - global $post, $current_user; |
|
239 | - $is_user_taking_course = Sensei_Course::is_user_enrolled( $post->ID, $current_user->ID ); |
|
240 | - $course_purchasable = ''; |
|
241 | - if ( class_exists( 'Sensei_WC' ) ) { |
|
242 | - $course_purchasable = Sensei_WC::is_course_purchasable( $post->ID ); |
|
243 | - } |
|
244 | - |
|
245 | - ?> |
|
28 | + /** |
|
29 | + * Holds the LSX_Sensei_Course() variable. |
|
30 | + * |
|
31 | + * @var LSX_Sensei_Course() |
|
32 | + */ |
|
33 | + public $lsx_sensei_course = false; |
|
34 | + |
|
35 | + /** |
|
36 | + * Holds the LSX_Sensei_Lesson() variable. |
|
37 | + * |
|
38 | + * @var LSX_Sensei_Lesson() |
|
39 | + */ |
|
40 | + public $lsx_sensei_lesson = false; |
|
41 | + |
|
42 | + /** |
|
43 | + * Setup class. |
|
44 | + * |
|
45 | + * @since 1.0 |
|
46 | + */ |
|
47 | + public function __construct() { |
|
48 | + $this->lsx_sensei_course = require_once get_template_directory() . '/includes/sensei/class-lsx-sensei-course.php'; |
|
49 | + $this->lsx_sensei_lesson = require_once get_template_directory() . '/includes/sensei/class-lsx-sensei-lesson.php'; |
|
50 | + |
|
51 | + global $woothemes_sensei; |
|
52 | + |
|
53 | + add_action( 'wp_enqueue_scripts', array( $this, 'lsx_sensei_scripts_add_styles' ) ); |
|
54 | + |
|
55 | + remove_action( 'sensei_before_main_content', array( $woothemes_sensei->frontend, 'sensei_output_content_wrapper' ), 10 ); |
|
56 | + add_action( 'sensei_before_main_content', array( $this, 'lsx_sensei_theme_wrapper_start' ) ); |
|
57 | + |
|
58 | + remove_action( 'sensei_after_main_content', array( $woothemes_sensei->frontend, 'sensei_output_content_wrapper_end' ), 10 ); |
|
59 | + add_action( 'sensei_after_main_content', array( $this, 'lsx_sensei_theme_wrapper_end' ) ); |
|
60 | + |
|
61 | + add_filter( 'get_the_archive_title', array( $this, 'lsx_sensei_modify_archive_title' ), 99, 1 ); |
|
62 | + |
|
63 | + add_filter( 'lsx_banner_allowed_post_types', array( $this, 'lsx_banner_allowed_post_types_sensei' ) ); |
|
64 | + |
|
65 | + // LSX. |
|
66 | + add_filter( 'lsx_global_header_disable', array( $this, 'lsx_sensei_disable_lsx_banner' ) ); |
|
67 | + // LSX Banners - Plugin, Placeholders. |
|
68 | + add_filter( 'lsx_banner_plugin_disable', array( $this, 'lsx_sensei_disable_lsx_banner' ) ); |
|
69 | + // LSX Banners - Banner. |
|
70 | + add_filter( 'lsx_banner_disable', array( $this, 'lsx_sensei_disable_lsx_banner' ) ); |
|
71 | + |
|
72 | + add_filter( 'course_archive_title', array( $this, 'lsx_sensei_archive_title' ), 10, 1 ); |
|
73 | + add_filter( 'sensei_lesson_archive_title', array( $this, 'lsx_sensei_archive_title' ), 10, 1 ); |
|
74 | + |
|
75 | + add_filter( 'course_category_title', array( $this, 'lsx_sensei_category_title' ), 10, 1 ); |
|
76 | + |
|
77 | + add_action( 'sensei_course_content_inside_after', array( $this, 'lsx_sensei_add_buttons' ), 9 ); |
|
78 | + |
|
79 | + add_filter( 'sensei_wc_paid_courses_add_to_cart_button_text', array( $this, 'lsx_sensei_add_to_cart_text' ) ); |
|
80 | + |
|
81 | + add_action( 'lsx_content_wrap_before', array( $this, 'lsx_sensei_results_header' ) ); |
|
82 | + |
|
83 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_course_breadcrumb_filter' ), 40, 1 ); |
|
84 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_course_breadcrumb_filter' ), 40, 1 ); |
|
85 | + |
|
86 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_lesson_breadcrumb_filter' ), 40, 1 ); |
|
87 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_lesson_breadcrumb_filter' ), 40, 1 ); |
|
88 | + |
|
89 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_module_breadcrumb_filter' ), 40, 1 ); |
|
90 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_module_breadcrumb_filter' ), 40, 1 ); |
|
91 | + |
|
92 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_learner_breadcrumb_filter' ), 40, 1 ); |
|
93 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_learner_breadcrumb_filter' ), 40, 1 ); |
|
94 | + |
|
95 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_quiz_breadcrumb_filter' ), 40, 1 ); |
|
96 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_quiz_breadcrumb_filter' ), 40, 1 ); |
|
97 | + |
|
98 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_messages_breadcrumb_filter' ), 40, 1 ); |
|
99 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_messages_breadcrumb_filter' ), 40, 1 ); |
|
100 | + |
|
101 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_single_message_breadcrumb_filter' ), 40, 1 ); |
|
102 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_single_message_breadcrumb_filter' ), 40, 1 ); |
|
103 | + |
|
104 | + add_filter( 'wpseo_breadcrumb_links', array( $this, 'lsx_sensei_results_breadcrumb_filter' ), 40, 1 ); |
|
105 | + add_filter( 'woocommerce_get_breadcrumb', array( $this, 'lsx_sensei_results_breadcrumb_filter' ), 40, 1 ); |
|
106 | + |
|
107 | + add_action( 'sensei_archive_before_message_loop', array( $this, 'lsx_sensei_back_message_button' ) ); |
|
108 | + add_action( 'sensei_content_message_after', array( $this, 'lsx_sensei_view_message_button' ) ); |
|
109 | + |
|
110 | + } |
|
111 | + |
|
112 | + /** |
|
113 | + * Return an instance of this class. |
|
114 | + * |
|
115 | + * @since 1.0.0 |
|
116 | + * @return object A single instance of this class. |
|
117 | + */ |
|
118 | + public static function get_instance() { |
|
119 | + // If the single instance hasn't been set, set it now. |
|
120 | + if ( null === self::$instance ) { |
|
121 | + self::$instance = new self(); |
|
122 | + } |
|
123 | + return self::$instance; |
|
124 | + } |
|
125 | + |
|
126 | + /** |
|
127 | + * Sensei enqueue styles. |
|
128 | + * |
|
129 | + * @package lsx |
|
130 | + * @subpackage sensei |
|
131 | + */ |
|
132 | + public function lsx_sensei_scripts_add_styles() { |
|
133 | + wp_enqueue_style( 'sensei-lsx', get_template_directory_uri() . '/assets/css/sensei/sensei.css', array( 'lsx_main' ), LSX_VERSION ); |
|
134 | + wp_style_add_data( 'sensei-lsx', 'rtl', 'replace' ); |
|
135 | + } |
|
136 | + |
|
137 | + /** |
|
138 | + * Sensei wrapper start. |
|
139 | + * |
|
140 | + * @package lsx |
|
141 | + * @subpackage sensei |
|
142 | + */ |
|
143 | + public function lsx_sensei_theme_wrapper_start() { |
|
144 | + lsx_content_wrap_before(); |
|
145 | + echo '<div id="primary" class="content-area ' . esc_attr( lsx_main_class() ) . '">'; |
|
146 | + lsx_content_before(); |
|
147 | + lsx_content_top(); |
|
148 | + echo '<main id="main" class="site-main" role="main">'; |
|
149 | + } |
|
150 | + |
|
151 | + /** |
|
152 | + * Sensei wrapper end. |
|
153 | + * |
|
154 | + * @package lsx |
|
155 | + * @subpackage sensei |
|
156 | + */ |
|
157 | + public function lsx_sensei_theme_wrapper_end() { |
|
158 | + lsx_content_bottom(); |
|
159 | + echo '</main>'; |
|
160 | + lsx_content_after(); |
|
161 | + echo '</div>'; |
|
162 | + lsx_content_wrap_after(); |
|
163 | + } |
|
164 | + |
|
165 | + /** |
|
166 | + * Remove "Archives:" from the courses archive title. |
|
167 | + * |
|
168 | + * @param [type] $title |
|
169 | + * @return @title |
|
170 | + */ |
|
171 | + public function lsx_sensei_modify_archive_title( $title ) { |
|
172 | + if ( is_archive() && is_post_type_archive( 'course' ) ) { |
|
173 | + $title = __( 'Courses', 'lsx' ); |
|
174 | + } |
|
175 | + if ( is_archive() && is_post_type_archive( 'sensei_message' ) ) { |
|
176 | + $title = __( 'Messages', 'lsx' ); |
|
177 | + } |
|
178 | + if ( is_archive() && is_post_type_archive( 'lesson' ) ) { |
|
179 | + $title = __( 'Lessons', 'lsx' ); |
|
180 | + } |
|
181 | + if ( is_archive() && is_tax() ) { |
|
182 | + $title = single_term_title( '', false ); |
|
183 | + } |
|
184 | + return $title; |
|
185 | + } |
|
186 | + |
|
187 | + /** |
|
188 | + * Disable LSX Banners in some Sensei pages. |
|
189 | + * |
|
190 | + * @package lsx |
|
191 | + * @subpackage sensei |
|
192 | + */ |
|
193 | + public function lsx_sensei_disable_lsx_banner( $disabled ) { |
|
194 | + if ( is_sensei() && ( ! is_singular( 'lesson' ) ) ) { |
|
195 | + $disabled = true; |
|
196 | + } |
|
197 | + |
|
198 | + return $disabled; |
|
199 | + } |
|
200 | + |
|
201 | + /** |
|
202 | + * Enable project custom post type on LSX Banners. |
|
203 | + */ |
|
204 | + public function lsx_banner_allowed_post_types_sensei( $post_types ) { |
|
205 | + $post_types[] = 'lesson'; |
|
206 | + return $post_types; |
|
207 | + } |
|
208 | + |
|
209 | + /** |
|
210 | + * Filters the archive title. |
|
211 | + * |
|
212 | + * @package lsx |
|
213 | + * @subpackage sensei |
|
214 | + */ |
|
215 | + public function lsx_sensei_archive_title( $html ) { |
|
216 | + $html = preg_replace( '/<header class="archive-header"><h1>([^<]+)<\/h1><\/header>/i', '<h1>$1</h1>', $html ); |
|
217 | + return $html; |
|
218 | + } |
|
219 | + |
|
220 | + /** |
|
221 | + * Filters the archive title. |
|
222 | + * |
|
223 | + * @package lsx |
|
224 | + * @subpackage sensei |
|
225 | + */ |
|
226 | + public function lsx_sensei_category_title( $html ) { |
|
227 | + $html = str_replace( 'h2', 'h1', $html ); |
|
228 | + return $html; |
|
229 | + } |
|
230 | + |
|
231 | + /** |
|
232 | + * Add extra buttons to the single view on lists. |
|
233 | + * |
|
234 | + * @package lsx |
|
235 | + * @subpackage sensei |
|
236 | + */ |
|
237 | + public function lsx_sensei_add_buttons( $course_id ) { |
|
238 | + global $post, $current_user; |
|
239 | + $is_user_taking_course = Sensei_Course::is_user_enrolled( $post->ID, $current_user->ID ); |
|
240 | + $course_purchasable = ''; |
|
241 | + if ( class_exists( 'Sensei_WC' ) ) { |
|
242 | + $course_purchasable = Sensei_WC::is_course_purchasable( $post->ID ); |
|
243 | + } |
|
244 | + |
|
245 | + ?> |
|
246 | 246 | <section class="entry-actions"> |
247 | 247 | <?php |
248 | - if ( ( ! $is_user_taking_course ) && $course_purchasable ) { |
|
249 | - Sensei_WC::the_add_to_cart_button_html( $post->ID ); |
|
250 | - } |
|
251 | - ?> |
|
248 | + if ( ( ! $is_user_taking_course ) && $course_purchasable ) { |
|
249 | + Sensei_WC::the_add_to_cart_button_html( $post->ID ); |
|
250 | + } |
|
251 | + ?> |
|
252 | 252 | </section> |
253 | 253 | <?php |
254 | - } |
|
255 | - |
|
256 | - /** |
|
257 | - * Change add to cart button text. |
|
258 | - * |
|
259 | - * @package lsx |
|
260 | - * @subpackage sensei |
|
261 | - */ |
|
262 | - public function lsx_sensei_add_to_cart_text( $text ) { |
|
263 | - global $post, $current_user; |
|
264 | - $is_user_taking_course = Sensei_Utils::has_started_course( $post->ID, $current_user->ID ); |
|
265 | - $is_course_on_cart = Sensei_WC::is_course_in_cart( $post->ID, $current_user->ID ); |
|
266 | - |
|
267 | - $text = esc_html__( 'Add to cart', 'lsx' ); |
|
268 | - |
|
269 | - if ( ( $is_user_taking_course ) ) { |
|
270 | - return; |
|
271 | - } |
|
272 | - if ( ( $is_course_on_cart ) ) { |
|
273 | - $text = esc_html__( 'Course added to cart', 'lsx' ); |
|
274 | - } |
|
275 | - return $text; |
|
276 | - } |
|
277 | - |
|
278 | - /** |
|
279 | - * Displays the Results header. |
|
280 | - * |
|
281 | - * @package lsx |
|
282 | - * @subpackage layout |
|
283 | - */ |
|
284 | - public function lsx_sensei_results_header( $user ) { |
|
285 | - |
|
286 | - $default_size = 'sm'; |
|
287 | - $size = apply_filters( 'lsx_bootstrap_column_size', $default_size ); |
|
288 | - global $wp_query; |
|
289 | - if ( isset( $wp_query->query_vars['course_results'] ) ) { |
|
290 | - $is_results = $wp_query->query_vars['course_results']; |
|
291 | - } else { |
|
292 | - $is_results = false; |
|
293 | - } |
|
294 | - if ( isset( $wp_query->query_vars['learner_profile'] ) ) { |
|
295 | - $is_profile = $wp_query->query_vars['learner_profile']; |
|
296 | - } else { |
|
297 | - $is_profile = false; |
|
298 | - } |
|
299 | - |
|
300 | - if ( is_sticky() && $is_results ) : |
|
301 | - $course_for_results = get_page_by_path( $is_results, OBJECT, 'course' ); |
|
302 | - |
|
303 | - $course_title = esc_html( $course_for_results->post_title ); |
|
304 | - ?> |
|
254 | + } |
|
255 | + |
|
256 | + /** |
|
257 | + * Change add to cart button text. |
|
258 | + * |
|
259 | + * @package lsx |
|
260 | + * @subpackage sensei |
|
261 | + */ |
|
262 | + public function lsx_sensei_add_to_cart_text( $text ) { |
|
263 | + global $post, $current_user; |
|
264 | + $is_user_taking_course = Sensei_Utils::has_started_course( $post->ID, $current_user->ID ); |
|
265 | + $is_course_on_cart = Sensei_WC::is_course_in_cart( $post->ID, $current_user->ID ); |
|
266 | + |
|
267 | + $text = esc_html__( 'Add to cart', 'lsx' ); |
|
268 | + |
|
269 | + if ( ( $is_user_taking_course ) ) { |
|
270 | + return; |
|
271 | + } |
|
272 | + if ( ( $is_course_on_cart ) ) { |
|
273 | + $text = esc_html__( 'Course added to cart', 'lsx' ); |
|
274 | + } |
|
275 | + return $text; |
|
276 | + } |
|
277 | + |
|
278 | + /** |
|
279 | + * Displays the Results header. |
|
280 | + * |
|
281 | + * @package lsx |
|
282 | + * @subpackage layout |
|
283 | + */ |
|
284 | + public function lsx_sensei_results_header( $user ) { |
|
285 | + |
|
286 | + $default_size = 'sm'; |
|
287 | + $size = apply_filters( 'lsx_bootstrap_column_size', $default_size ); |
|
288 | + global $wp_query; |
|
289 | + if ( isset( $wp_query->query_vars['course_results'] ) ) { |
|
290 | + $is_results = $wp_query->query_vars['course_results']; |
|
291 | + } else { |
|
292 | + $is_results = false; |
|
293 | + } |
|
294 | + if ( isset( $wp_query->query_vars['learner_profile'] ) ) { |
|
295 | + $is_profile = $wp_query->query_vars['learner_profile']; |
|
296 | + } else { |
|
297 | + $is_profile = false; |
|
298 | + } |
|
299 | + |
|
300 | + if ( is_sticky() && $is_results ) : |
|
301 | + $course_for_results = get_page_by_path( $is_results, OBJECT, 'course' ); |
|
302 | + |
|
303 | + $course_title = esc_html( $course_for_results->post_title ); |
|
304 | + ?> |
|
305 | 305 | <div class="archive-header-wrapper banner-single col-<?php echo esc_attr( $size ); ?>-12"> |
306 | 306 | <?php lsx_global_header_inner_bottom(); ?> |
307 | 307 | <header class="archive-header"> |
@@ -310,13 +310,13 @@ discard block |
||
310 | 310 | |
311 | 311 | </div> |
312 | 312 | <?php |
313 | - endif; |
|
313 | + endif; |
|
314 | 314 | |
315 | - if ( $is_profile ) : |
|
316 | - $query_var = $wp_query->query_vars['learner_profile']; |
|
317 | - $learner_user = Sensei_Learner::find_by_query_var( $query_var ); |
|
318 | - $learner_name = $learner_user->display_name; |
|
319 | - ?> |
|
315 | + if ( $is_profile ) : |
|
316 | + $query_var = $wp_query->query_vars['learner_profile']; |
|
317 | + $learner_user = Sensei_Learner::find_by_query_var( $query_var ); |
|
318 | + $learner_name = $learner_user->display_name; |
|
319 | + ?> |
|
320 | 320 | <div class="archive-header-wrapper banner-single col-<?php echo esc_attr( $size ); ?>-12"> |
321 | 321 | <?php lsx_global_header_inner_bottom(); ?> |
322 | 322 | <header class="archive-header"> |
@@ -325,432 +325,432 @@ discard block |
||
325 | 325 | |
326 | 326 | </div> |
327 | 327 | <?php |
328 | - endif; |
|
329 | - } |
|
330 | - |
|
331 | - /** |
|
332 | - * Add the Parent Course link to the course breadcrumbs |
|
333 | - * @param $crumbs |
|
334 | - * @return array |
|
335 | - */ |
|
336 | - public function lsx_sensei_course_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
337 | - if ( is_single() && ( is_singular( 'course' ) ) ) { |
|
338 | - global $course; |
|
339 | - $lesson = get_the_title(); |
|
340 | - $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
341 | - $course_page_url = get_permalink( $course_page_url ); |
|
342 | - |
|
343 | - if ( $lesson ) { |
|
344 | - |
|
345 | - $new_crumbs = array(); |
|
346 | - $new_crumbs[0] = $crumbs[0]; |
|
347 | - |
|
348 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
349 | - $new_crumbs[1] = array( |
|
350 | - 0 => __( 'All Courses', 'lsx' ), |
|
351 | - 1 => $course_page_url, |
|
352 | - ); |
|
353 | - $new_crumbs[2] = array( |
|
354 | - 0 => $lesson, |
|
355 | - ); |
|
356 | - } else { |
|
357 | - $new_crumbs[1] = array( |
|
358 | - 'text' => __( 'All Courses', 'lsx' ), |
|
359 | - 'url' => $course_page_url, |
|
360 | - ); |
|
361 | - $new_crumbs[2] = array( |
|
362 | - 'text' => $lesson, |
|
363 | - ); |
|
364 | - } |
|
365 | - $crumbs = $new_crumbs; |
|
366 | - } |
|
367 | - } |
|
368 | - return $crumbs; |
|
369 | - } |
|
370 | - |
|
371 | - /** |
|
372 | - * Add the Parent Course link to the lessons breadcrumbs |
|
373 | - * @param $crumbs |
|
374 | - * @return array |
|
375 | - */ |
|
376 | - public function lsx_sensei_lesson_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
377 | - if ( is_sensei() && is_single() && ( is_singular( 'lesson' ) ) ) { |
|
378 | - global $course; |
|
379 | - $lesson = get_the_title(); |
|
380 | - $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
381 | - $course_page_url = get_permalink( $course_page_url ); |
|
382 | - |
|
383 | - if ( empty( $id ) ) { |
|
384 | - $id = get_the_ID(); |
|
385 | - } |
|
386 | - |
|
387 | - if ( 0 < intval( $id ) ) { |
|
388 | - $course = intval( get_post_meta( $id, '_lesson_course', true ) ); |
|
389 | - $course_id = esc_url( get_permalink( $course ) ); |
|
390 | - $course_title = esc_html( get_the_title( $course ) ); |
|
391 | - if ( ! $course ) { |
|
392 | - return; |
|
393 | - } |
|
394 | - } |
|
395 | - |
|
396 | - if ( $course_id ) { |
|
397 | - |
|
398 | - $new_crumbs = array(); |
|
399 | - $new_crumbs[0] = $crumbs[0]; |
|
400 | - |
|
401 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
402 | - $new_crumbs[1] = array( |
|
403 | - 0 => __( 'Courses', 'lsx' ), |
|
404 | - 1 => $course_page_url, |
|
405 | - ); |
|
406 | - $new_crumbs[2] = array( |
|
407 | - 0 => $course_title, |
|
408 | - 1 => $course_id, |
|
409 | - ); |
|
410 | - $new_crumbs[3] = array( |
|
411 | - 0 => $lesson, |
|
412 | - ); |
|
413 | - } else { |
|
414 | - $new_crumbs[1] = array( |
|
415 | - 'text' => __( 'Courses', 'lsx' ), |
|
416 | - 'url' => $course_page_url, |
|
417 | - ); |
|
418 | - $new_crumbs[2] = array( |
|
419 | - 'text' => $course_title, |
|
420 | - 'url' => $course_id, |
|
421 | - ); |
|
422 | - $new_crumbs[3] = array( |
|
423 | - 'text' => $lesson, |
|
424 | - ); |
|
425 | - } |
|
426 | - $crumbs = $new_crumbs; |
|
427 | - } |
|
428 | - } |
|
429 | - return $crumbs; |
|
430 | - } |
|
431 | - |
|
432 | - /** |
|
433 | - * Add the Parent Course link to the module breadcrumbs |
|
434 | - * @param $crumbs |
|
435 | - * @return array |
|
436 | - */ |
|
437 | - public function lsx_sensei_module_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
438 | - if ( ! empty( get_queried_object()->name ) ) { |
|
439 | - $title = apply_filters( 'sensei_module_archive_title', get_queried_object()->name ); |
|
440 | - } |
|
441 | - |
|
442 | - if ( is_sensei() && is_tax() && is_archive() && ( ! empty( $title ) ) ) { |
|
443 | - |
|
444 | - $lesson = get_the_archive_title(); |
|
445 | - $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
446 | - $course_page_url = get_permalink( $course_page_url ); |
|
447 | - |
|
448 | - if ( empty( $id ) ) { |
|
449 | - $id = get_the_ID(); |
|
450 | - } |
|
451 | - |
|
452 | - $new_crumbs = array(); |
|
453 | - $new_crumbs[0] = $crumbs[0]; |
|
454 | - |
|
455 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
456 | - $new_crumbs[1] = array( |
|
457 | - 0 => __( 'Courses', 'lsx' ), |
|
458 | - 1 => $course_page_url, |
|
459 | - ); |
|
460 | - $new_crumbs[2] = array( |
|
461 | - 0 => $lesson, |
|
462 | - ); |
|
463 | - } else { |
|
464 | - $new_crumbs[1] = array( |
|
465 | - 'text' => __( 'Courses', 'lsx' ), |
|
466 | - 'url' => $course_page_url, |
|
467 | - ); |
|
468 | - $new_crumbs[2] = array( |
|
469 | - 'text' => $lesson, |
|
470 | - ); |
|
471 | - } |
|
472 | - $crumbs = $new_crumbs; |
|
473 | - } |
|
474 | - return $crumbs; |
|
475 | - } |
|
476 | - |
|
477 | - /** |
|
478 | - * Add the Parent Course link to the Learner breadcrumbs |
|
479 | - * @param $crumbs |
|
480 | - * @return array |
|
481 | - */ |
|
482 | - public function lsx_sensei_learner_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
483 | - global $wp_query; |
|
484 | - |
|
485 | - if ( isset( $wp_query->query_vars['learner_profile'] ) ) { |
|
486 | - $is_profile = $wp_query->query_vars['learner_profile']; |
|
487 | - } else { |
|
488 | - $is_profile = false; |
|
489 | - } |
|
490 | - |
|
491 | - if ( $is_profile ) { |
|
492 | - |
|
493 | - if ( empty( $id ) ) { |
|
494 | - $id = get_the_ID(); |
|
495 | - } |
|
496 | - |
|
497 | - $query_var = $wp_query->query_vars['learner_profile']; |
|
498 | - $learner_user = Sensei_Learner::find_by_query_var( $query_var ); |
|
499 | - $learner_name = $learner_user->display_name; |
|
500 | - |
|
501 | - $new_crumbs = array(); |
|
502 | - $new_crumbs[0] = $crumbs[0]; |
|
503 | - |
|
504 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
505 | - $new_crumbs[1] = array( |
|
506 | - 0 => __( 'Learners', 'lsx' ), |
|
507 | - ); |
|
508 | - $new_crumbs[2] = array( |
|
509 | - 0 => $learner_name, |
|
510 | - ); |
|
511 | - } else { |
|
512 | - $new_crumbs[1] = array( |
|
513 | - 'text' => __( 'Learners', 'lsx' ), |
|
514 | - ); |
|
515 | - $new_crumbs[2] = array( |
|
516 | - 'text' => $learner_name, |
|
517 | - ); |
|
518 | - } |
|
519 | - $crumbs = $new_crumbs; |
|
520 | - } |
|
521 | - return $crumbs; |
|
522 | - } |
|
523 | - |
|
524 | - /** |
|
525 | - * Add the Parent Course link to the messages breadcrumbs |
|
526 | - * @param $crumbs |
|
527 | - * @return array |
|
528 | - */ |
|
529 | - public function lsx_sensei_messages_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
530 | - if ( is_archive() && ( is_post_type_archive( 'sensei_message' ) ) ) { |
|
531 | - |
|
532 | - $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
533 | - $course_page_url = get_permalink( $course_page_url ); |
|
534 | - |
|
535 | - if ( empty( $id ) ) { |
|
536 | - $id = get_the_ID(); |
|
537 | - } |
|
538 | - |
|
539 | - if ( $id ) { |
|
540 | - |
|
541 | - $new_crumbs = array(); |
|
542 | - $new_crumbs[0] = $crumbs[0]; |
|
543 | - |
|
544 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
545 | - $new_crumbs[1] = array( |
|
546 | - 0 => __( 'Courses', 'lsx' ), |
|
547 | - 1 => $course_page_url, |
|
548 | - ); |
|
549 | - $new_crumbs[2] = array( |
|
550 | - 0 => __( 'Messages', 'lsx' ), |
|
551 | - ); |
|
552 | - } else { |
|
553 | - $new_crumbs[1] = array( |
|
554 | - 'text' => __( 'Courses', 'lsx' ), |
|
555 | - 'url' => $course_page_url, |
|
556 | - ); |
|
557 | - $new_crumbs[2] = array( |
|
558 | - 'text' => __( 'Messages', 'lsx' ), |
|
559 | - ); |
|
560 | - } |
|
561 | - $crumbs = $new_crumbs; |
|
562 | - } |
|
563 | - } |
|
564 | - return $crumbs; |
|
565 | - } |
|
566 | - |
|
567 | - /** |
|
568 | - * Add the Parent Course link to the single messages breadcrumbs |
|
569 | - * @param $crumbs |
|
570 | - * @return array |
|
571 | - */ |
|
572 | - public function lsx_sensei_single_message_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
573 | - if ( is_single() && ( is_singular( 'sensei_message' ) ) ) { |
|
574 | - |
|
575 | - $messages_page_url = '/messages/'; |
|
576 | - |
|
577 | - if ( empty( $id ) ) { |
|
578 | - $id = get_the_ID(); |
|
579 | - } |
|
580 | - |
|
581 | - if ( $id ) { |
|
582 | - |
|
583 | - $new_crumbs = array(); |
|
584 | - $new_crumbs[0] = $crumbs[0]; |
|
585 | - |
|
586 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
587 | - $new_crumbs[1] = array( |
|
588 | - 0 => __( 'Messages', 'lsx' ), |
|
589 | - 1 => $messages_page_url, |
|
590 | - ); |
|
591 | - $new_crumbs[2] = array( |
|
592 | - 0 => __( 'Message', 'lsx' ), |
|
593 | - ); |
|
594 | - } else { |
|
595 | - $new_crumbs[1] = array( |
|
596 | - 'text' => __( 'Messages', 'lsx' ), |
|
597 | - 'url' => $messages_page_url, |
|
598 | - ); |
|
599 | - $new_crumbs[2] = array( |
|
600 | - 'text' => __( 'Message', 'lsx' ), |
|
601 | - ); |
|
602 | - } |
|
603 | - $crumbs = $new_crumbs; |
|
604 | - } |
|
605 | - } |
|
606 | - return $crumbs; |
|
607 | - } |
|
608 | - |
|
609 | - /** |
|
610 | - * Add the Parent Course link to the quiz breadcrumbs |
|
611 | - * @param $crumbs |
|
612 | - * @return array |
|
613 | - */ |
|
614 | - public function lsx_sensei_quiz_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
615 | - if ( ( is_single() && ( is_singular( 'quiz' ) ) ) ) { |
|
616 | - global $course; |
|
617 | - $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
618 | - $course_page_url = get_permalink( $course_page_url ); |
|
619 | - $lesson = get_the_title(); |
|
620 | - |
|
621 | - if ( empty( $id ) ) { |
|
622 | - $id = get_the_ID(); |
|
623 | - } |
|
624 | - |
|
625 | - if ( 0 < intval( $id ) ) { |
|
626 | - |
|
627 | - $course = intval( get_post_meta( $id, '_quiz_lesson', true ) ); |
|
628 | - $course_id = esc_url( get_permalink( $course ) ); |
|
629 | - $course_title = esc_html( get_the_title( $course ) ); |
|
630 | - if ( ! $course ) { |
|
631 | - return; |
|
632 | - } |
|
633 | - } |
|
634 | - |
|
635 | - if ( $course_id ) { |
|
636 | - |
|
637 | - $new_crumbs = array(); |
|
638 | - $new_crumbs[0] = $crumbs[0]; |
|
639 | - |
|
640 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
641 | - $new_crumbs[1] = array( |
|
642 | - 0 => __( 'Courses', 'lsx' ), |
|
643 | - 1 => $course_page_url, |
|
644 | - ); |
|
645 | - $new_crumbs[2] = array( |
|
646 | - 0 => $course_title, |
|
647 | - 1 => $course_id, |
|
648 | - ); |
|
649 | - $new_crumbs[3] = array( |
|
650 | - 0 => $lesson, |
|
651 | - ); |
|
652 | - } else { |
|
653 | - $new_crumbs[1] = array( |
|
654 | - 'text' => __( 'Courses', 'lsx' ), |
|
655 | - 'url' => $course_page_url, |
|
656 | - ); |
|
657 | - $new_crumbs[2] = array( |
|
658 | - 'text' => $course_title, |
|
659 | - 'url' => $course_id, |
|
660 | - ); |
|
661 | - $new_crumbs[3] = array( |
|
662 | - 'text' => $lesson, |
|
663 | - ); |
|
664 | - } |
|
665 | - |
|
666 | - $crumbs = $new_crumbs; |
|
667 | - } |
|
668 | - } |
|
669 | - return $crumbs; |
|
670 | - } |
|
671 | - |
|
672 | - /** |
|
673 | - * Add the Parent Course link to the results breadcrumbs |
|
674 | - * @param $crumbs |
|
675 | - * @return array |
|
676 | - */ |
|
677 | - public function lsx_sensei_results_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
678 | - if ( is_sticky() ) { |
|
679 | - global $wp_query; |
|
680 | - $course_id = ''; |
|
681 | - if ( isset( $wp_query->query_vars['course_results'] ) ) { |
|
682 | - $is_results = $wp_query->query_vars['course_results']; |
|
683 | - } |
|
684 | - $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
685 | - $course_page_url = get_permalink( $course_page_url ); |
|
686 | - |
|
687 | - if ( empty( $id ) ) { |
|
688 | - $id = get_the_ID(); |
|
689 | - } |
|
690 | - |
|
691 | - if ( isset( $is_results ) ) { |
|
692 | - $course_for_results = get_page_by_path( $is_results, OBJECT, 'course' ); |
|
693 | - |
|
694 | - $course_id = esc_url( get_permalink( $course_for_results ) ); |
|
695 | - $course_title = esc_html( $course_for_results->post_title ); |
|
696 | - |
|
697 | - } |
|
698 | - |
|
699 | - if ( $course_id ) { |
|
700 | - $new_crumbs = array(); |
|
701 | - $new_crumbs[0] = $crumbs[0]; |
|
702 | - |
|
703 | - if ( $is_results ) { |
|
704 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
705 | - $new_crumbs[1] = array( |
|
706 | - 0 => __( 'Courses', 'lsx' ), |
|
707 | - 1 => $course_page_url, |
|
708 | - ); |
|
709 | - $new_crumbs[2] = array( |
|
710 | - 0 => $course_title, |
|
711 | - 1 => $course_id, |
|
712 | - ); |
|
713 | - $new_crumbs[3] = array( |
|
714 | - 0 => __( 'Results', 'lsx' ), |
|
715 | - ); |
|
716 | - } else { |
|
717 | - $new_crumbs[1] = array( |
|
718 | - 'text' => __( 'Courses', 'lsx' ), |
|
719 | - 'url' => $course_page_url, |
|
720 | - ); |
|
721 | - $new_crumbs[2] = array( |
|
722 | - 'text' => __( 'Results', 'lsx' ), |
|
723 | - ); |
|
724 | - } |
|
725 | - } |
|
726 | - $crumbs = $new_crumbs; |
|
727 | - } |
|
728 | - } |
|
729 | - return $crumbs; |
|
730 | - } |
|
731 | - |
|
732 | - /** |
|
733 | - * Show the 'View Message' button on messages. |
|
734 | - * |
|
735 | - * @param [type] $message_post_id |
|
736 | - * @return void |
|
737 | - */ |
|
738 | - public function lsx_sensei_view_message_button( $message_post_id ) { |
|
739 | - $message_link = get_the_permalink( $message_post_id ); |
|
740 | - echo '<a href="' . esc_url_raw( $message_link ) . '" class="btn view-msg-btn">' . wp_kses_post( 'View Message', 'lsx' ) . '</a>'; |
|
741 | - } |
|
742 | - |
|
743 | - /** |
|
744 | - * Show the 'Back to My Courses' button on messages. |
|
745 | - * |
|
746 | - * @param [type] $message_post_id |
|
747 | - * @return void |
|
748 | - */ |
|
749 | - public function lsx_sensei_back_message_button( $courses_link ) { |
|
750 | - $courses_link = '/my-courses/'; |
|
751 | - echo '<a href="' . esc_url_raw( $courses_link ) . '" class="btn border-btn my-courses-btn">' . wp_kses_post( 'My Courses', 'lsx' ) . '</a>'; |
|
752 | - } |
|
753 | - } |
|
328 | + endif; |
|
329 | + } |
|
330 | + |
|
331 | + /** |
|
332 | + * Add the Parent Course link to the course breadcrumbs |
|
333 | + * @param $crumbs |
|
334 | + * @return array |
|
335 | + */ |
|
336 | + public function lsx_sensei_course_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
337 | + if ( is_single() && ( is_singular( 'course' ) ) ) { |
|
338 | + global $course; |
|
339 | + $lesson = get_the_title(); |
|
340 | + $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
341 | + $course_page_url = get_permalink( $course_page_url ); |
|
342 | + |
|
343 | + if ( $lesson ) { |
|
344 | + |
|
345 | + $new_crumbs = array(); |
|
346 | + $new_crumbs[0] = $crumbs[0]; |
|
347 | + |
|
348 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
349 | + $new_crumbs[1] = array( |
|
350 | + 0 => __( 'All Courses', 'lsx' ), |
|
351 | + 1 => $course_page_url, |
|
352 | + ); |
|
353 | + $new_crumbs[2] = array( |
|
354 | + 0 => $lesson, |
|
355 | + ); |
|
356 | + } else { |
|
357 | + $new_crumbs[1] = array( |
|
358 | + 'text' => __( 'All Courses', 'lsx' ), |
|
359 | + 'url' => $course_page_url, |
|
360 | + ); |
|
361 | + $new_crumbs[2] = array( |
|
362 | + 'text' => $lesson, |
|
363 | + ); |
|
364 | + } |
|
365 | + $crumbs = $new_crumbs; |
|
366 | + } |
|
367 | + } |
|
368 | + return $crumbs; |
|
369 | + } |
|
370 | + |
|
371 | + /** |
|
372 | + * Add the Parent Course link to the lessons breadcrumbs |
|
373 | + * @param $crumbs |
|
374 | + * @return array |
|
375 | + */ |
|
376 | + public function lsx_sensei_lesson_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
377 | + if ( is_sensei() && is_single() && ( is_singular( 'lesson' ) ) ) { |
|
378 | + global $course; |
|
379 | + $lesson = get_the_title(); |
|
380 | + $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
381 | + $course_page_url = get_permalink( $course_page_url ); |
|
382 | + |
|
383 | + if ( empty( $id ) ) { |
|
384 | + $id = get_the_ID(); |
|
385 | + } |
|
386 | + |
|
387 | + if ( 0 < intval( $id ) ) { |
|
388 | + $course = intval( get_post_meta( $id, '_lesson_course', true ) ); |
|
389 | + $course_id = esc_url( get_permalink( $course ) ); |
|
390 | + $course_title = esc_html( get_the_title( $course ) ); |
|
391 | + if ( ! $course ) { |
|
392 | + return; |
|
393 | + } |
|
394 | + } |
|
395 | + |
|
396 | + if ( $course_id ) { |
|
397 | + |
|
398 | + $new_crumbs = array(); |
|
399 | + $new_crumbs[0] = $crumbs[0]; |
|
400 | + |
|
401 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
402 | + $new_crumbs[1] = array( |
|
403 | + 0 => __( 'Courses', 'lsx' ), |
|
404 | + 1 => $course_page_url, |
|
405 | + ); |
|
406 | + $new_crumbs[2] = array( |
|
407 | + 0 => $course_title, |
|
408 | + 1 => $course_id, |
|
409 | + ); |
|
410 | + $new_crumbs[3] = array( |
|
411 | + 0 => $lesson, |
|
412 | + ); |
|
413 | + } else { |
|
414 | + $new_crumbs[1] = array( |
|
415 | + 'text' => __( 'Courses', 'lsx' ), |
|
416 | + 'url' => $course_page_url, |
|
417 | + ); |
|
418 | + $new_crumbs[2] = array( |
|
419 | + 'text' => $course_title, |
|
420 | + 'url' => $course_id, |
|
421 | + ); |
|
422 | + $new_crumbs[3] = array( |
|
423 | + 'text' => $lesson, |
|
424 | + ); |
|
425 | + } |
|
426 | + $crumbs = $new_crumbs; |
|
427 | + } |
|
428 | + } |
|
429 | + return $crumbs; |
|
430 | + } |
|
431 | + |
|
432 | + /** |
|
433 | + * Add the Parent Course link to the module breadcrumbs |
|
434 | + * @param $crumbs |
|
435 | + * @return array |
|
436 | + */ |
|
437 | + public function lsx_sensei_module_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
438 | + if ( ! empty( get_queried_object()->name ) ) { |
|
439 | + $title = apply_filters( 'sensei_module_archive_title', get_queried_object()->name ); |
|
440 | + } |
|
441 | + |
|
442 | + if ( is_sensei() && is_tax() && is_archive() && ( ! empty( $title ) ) ) { |
|
443 | + |
|
444 | + $lesson = get_the_archive_title(); |
|
445 | + $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
446 | + $course_page_url = get_permalink( $course_page_url ); |
|
447 | + |
|
448 | + if ( empty( $id ) ) { |
|
449 | + $id = get_the_ID(); |
|
450 | + } |
|
451 | + |
|
452 | + $new_crumbs = array(); |
|
453 | + $new_crumbs[0] = $crumbs[0]; |
|
454 | + |
|
455 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
456 | + $new_crumbs[1] = array( |
|
457 | + 0 => __( 'Courses', 'lsx' ), |
|
458 | + 1 => $course_page_url, |
|
459 | + ); |
|
460 | + $new_crumbs[2] = array( |
|
461 | + 0 => $lesson, |
|
462 | + ); |
|
463 | + } else { |
|
464 | + $new_crumbs[1] = array( |
|
465 | + 'text' => __( 'Courses', 'lsx' ), |
|
466 | + 'url' => $course_page_url, |
|
467 | + ); |
|
468 | + $new_crumbs[2] = array( |
|
469 | + 'text' => $lesson, |
|
470 | + ); |
|
471 | + } |
|
472 | + $crumbs = $new_crumbs; |
|
473 | + } |
|
474 | + return $crumbs; |
|
475 | + } |
|
476 | + |
|
477 | + /** |
|
478 | + * Add the Parent Course link to the Learner breadcrumbs |
|
479 | + * @param $crumbs |
|
480 | + * @return array |
|
481 | + */ |
|
482 | + public function lsx_sensei_learner_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
483 | + global $wp_query; |
|
484 | + |
|
485 | + if ( isset( $wp_query->query_vars['learner_profile'] ) ) { |
|
486 | + $is_profile = $wp_query->query_vars['learner_profile']; |
|
487 | + } else { |
|
488 | + $is_profile = false; |
|
489 | + } |
|
490 | + |
|
491 | + if ( $is_profile ) { |
|
492 | + |
|
493 | + if ( empty( $id ) ) { |
|
494 | + $id = get_the_ID(); |
|
495 | + } |
|
496 | + |
|
497 | + $query_var = $wp_query->query_vars['learner_profile']; |
|
498 | + $learner_user = Sensei_Learner::find_by_query_var( $query_var ); |
|
499 | + $learner_name = $learner_user->display_name; |
|
500 | + |
|
501 | + $new_crumbs = array(); |
|
502 | + $new_crumbs[0] = $crumbs[0]; |
|
503 | + |
|
504 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
505 | + $new_crumbs[1] = array( |
|
506 | + 0 => __( 'Learners', 'lsx' ), |
|
507 | + ); |
|
508 | + $new_crumbs[2] = array( |
|
509 | + 0 => $learner_name, |
|
510 | + ); |
|
511 | + } else { |
|
512 | + $new_crumbs[1] = array( |
|
513 | + 'text' => __( 'Learners', 'lsx' ), |
|
514 | + ); |
|
515 | + $new_crumbs[2] = array( |
|
516 | + 'text' => $learner_name, |
|
517 | + ); |
|
518 | + } |
|
519 | + $crumbs = $new_crumbs; |
|
520 | + } |
|
521 | + return $crumbs; |
|
522 | + } |
|
523 | + |
|
524 | + /** |
|
525 | + * Add the Parent Course link to the messages breadcrumbs |
|
526 | + * @param $crumbs |
|
527 | + * @return array |
|
528 | + */ |
|
529 | + public function lsx_sensei_messages_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
530 | + if ( is_archive() && ( is_post_type_archive( 'sensei_message' ) ) ) { |
|
531 | + |
|
532 | + $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
533 | + $course_page_url = get_permalink( $course_page_url ); |
|
534 | + |
|
535 | + if ( empty( $id ) ) { |
|
536 | + $id = get_the_ID(); |
|
537 | + } |
|
538 | + |
|
539 | + if ( $id ) { |
|
540 | + |
|
541 | + $new_crumbs = array(); |
|
542 | + $new_crumbs[0] = $crumbs[0]; |
|
543 | + |
|
544 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
545 | + $new_crumbs[1] = array( |
|
546 | + 0 => __( 'Courses', 'lsx' ), |
|
547 | + 1 => $course_page_url, |
|
548 | + ); |
|
549 | + $new_crumbs[2] = array( |
|
550 | + 0 => __( 'Messages', 'lsx' ), |
|
551 | + ); |
|
552 | + } else { |
|
553 | + $new_crumbs[1] = array( |
|
554 | + 'text' => __( 'Courses', 'lsx' ), |
|
555 | + 'url' => $course_page_url, |
|
556 | + ); |
|
557 | + $new_crumbs[2] = array( |
|
558 | + 'text' => __( 'Messages', 'lsx' ), |
|
559 | + ); |
|
560 | + } |
|
561 | + $crumbs = $new_crumbs; |
|
562 | + } |
|
563 | + } |
|
564 | + return $crumbs; |
|
565 | + } |
|
566 | + |
|
567 | + /** |
|
568 | + * Add the Parent Course link to the single messages breadcrumbs |
|
569 | + * @param $crumbs |
|
570 | + * @return array |
|
571 | + */ |
|
572 | + public function lsx_sensei_single_message_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
573 | + if ( is_single() && ( is_singular( 'sensei_message' ) ) ) { |
|
574 | + |
|
575 | + $messages_page_url = '/messages/'; |
|
576 | + |
|
577 | + if ( empty( $id ) ) { |
|
578 | + $id = get_the_ID(); |
|
579 | + } |
|
580 | + |
|
581 | + if ( $id ) { |
|
582 | + |
|
583 | + $new_crumbs = array(); |
|
584 | + $new_crumbs[0] = $crumbs[0]; |
|
585 | + |
|
586 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
587 | + $new_crumbs[1] = array( |
|
588 | + 0 => __( 'Messages', 'lsx' ), |
|
589 | + 1 => $messages_page_url, |
|
590 | + ); |
|
591 | + $new_crumbs[2] = array( |
|
592 | + 0 => __( 'Message', 'lsx' ), |
|
593 | + ); |
|
594 | + } else { |
|
595 | + $new_crumbs[1] = array( |
|
596 | + 'text' => __( 'Messages', 'lsx' ), |
|
597 | + 'url' => $messages_page_url, |
|
598 | + ); |
|
599 | + $new_crumbs[2] = array( |
|
600 | + 'text' => __( 'Message', 'lsx' ), |
|
601 | + ); |
|
602 | + } |
|
603 | + $crumbs = $new_crumbs; |
|
604 | + } |
|
605 | + } |
|
606 | + return $crumbs; |
|
607 | + } |
|
608 | + |
|
609 | + /** |
|
610 | + * Add the Parent Course link to the quiz breadcrumbs |
|
611 | + * @param $crumbs |
|
612 | + * @return array |
|
613 | + */ |
|
614 | + public function lsx_sensei_quiz_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
615 | + if ( ( is_single() && ( is_singular( 'quiz' ) ) ) ) { |
|
616 | + global $course; |
|
617 | + $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
618 | + $course_page_url = get_permalink( $course_page_url ); |
|
619 | + $lesson = get_the_title(); |
|
620 | + |
|
621 | + if ( empty( $id ) ) { |
|
622 | + $id = get_the_ID(); |
|
623 | + } |
|
624 | + |
|
625 | + if ( 0 < intval( $id ) ) { |
|
626 | + |
|
627 | + $course = intval( get_post_meta( $id, '_quiz_lesson', true ) ); |
|
628 | + $course_id = esc_url( get_permalink( $course ) ); |
|
629 | + $course_title = esc_html( get_the_title( $course ) ); |
|
630 | + if ( ! $course ) { |
|
631 | + return; |
|
632 | + } |
|
633 | + } |
|
634 | + |
|
635 | + if ( $course_id ) { |
|
636 | + |
|
637 | + $new_crumbs = array(); |
|
638 | + $new_crumbs[0] = $crumbs[0]; |
|
639 | + |
|
640 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
641 | + $new_crumbs[1] = array( |
|
642 | + 0 => __( 'Courses', 'lsx' ), |
|
643 | + 1 => $course_page_url, |
|
644 | + ); |
|
645 | + $new_crumbs[2] = array( |
|
646 | + 0 => $course_title, |
|
647 | + 1 => $course_id, |
|
648 | + ); |
|
649 | + $new_crumbs[3] = array( |
|
650 | + 0 => $lesson, |
|
651 | + ); |
|
652 | + } else { |
|
653 | + $new_crumbs[1] = array( |
|
654 | + 'text' => __( 'Courses', 'lsx' ), |
|
655 | + 'url' => $course_page_url, |
|
656 | + ); |
|
657 | + $new_crumbs[2] = array( |
|
658 | + 'text' => $course_title, |
|
659 | + 'url' => $course_id, |
|
660 | + ); |
|
661 | + $new_crumbs[3] = array( |
|
662 | + 'text' => $lesson, |
|
663 | + ); |
|
664 | + } |
|
665 | + |
|
666 | + $crumbs = $new_crumbs; |
|
667 | + } |
|
668 | + } |
|
669 | + return $crumbs; |
|
670 | + } |
|
671 | + |
|
672 | + /** |
|
673 | + * Add the Parent Course link to the results breadcrumbs |
|
674 | + * @param $crumbs |
|
675 | + * @return array |
|
676 | + */ |
|
677 | + public function lsx_sensei_results_breadcrumb_filter( $crumbs, $id = 0 ) { |
|
678 | + if ( is_sticky() ) { |
|
679 | + global $wp_query; |
|
680 | + $course_id = ''; |
|
681 | + if ( isset( $wp_query->query_vars['course_results'] ) ) { |
|
682 | + $is_results = $wp_query->query_vars['course_results']; |
|
683 | + } |
|
684 | + $course_page_url = intval( Sensei()->settings->settings['course_page'] ); |
|
685 | + $course_page_url = get_permalink( $course_page_url ); |
|
686 | + |
|
687 | + if ( empty( $id ) ) { |
|
688 | + $id = get_the_ID(); |
|
689 | + } |
|
690 | + |
|
691 | + if ( isset( $is_results ) ) { |
|
692 | + $course_for_results = get_page_by_path( $is_results, OBJECT, 'course' ); |
|
693 | + |
|
694 | + $course_id = esc_url( get_permalink( $course_for_results ) ); |
|
695 | + $course_title = esc_html( $course_for_results->post_title ); |
|
696 | + |
|
697 | + } |
|
698 | + |
|
699 | + if ( $course_id ) { |
|
700 | + $new_crumbs = array(); |
|
701 | + $new_crumbs[0] = $crumbs[0]; |
|
702 | + |
|
703 | + if ( $is_results ) { |
|
704 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
705 | + $new_crumbs[1] = array( |
|
706 | + 0 => __( 'Courses', 'lsx' ), |
|
707 | + 1 => $course_page_url, |
|
708 | + ); |
|
709 | + $new_crumbs[2] = array( |
|
710 | + 0 => $course_title, |
|
711 | + 1 => $course_id, |
|
712 | + ); |
|
713 | + $new_crumbs[3] = array( |
|
714 | + 0 => __( 'Results', 'lsx' ), |
|
715 | + ); |
|
716 | + } else { |
|
717 | + $new_crumbs[1] = array( |
|
718 | + 'text' => __( 'Courses', 'lsx' ), |
|
719 | + 'url' => $course_page_url, |
|
720 | + ); |
|
721 | + $new_crumbs[2] = array( |
|
722 | + 'text' => __( 'Results', 'lsx' ), |
|
723 | + ); |
|
724 | + } |
|
725 | + } |
|
726 | + $crumbs = $new_crumbs; |
|
727 | + } |
|
728 | + } |
|
729 | + return $crumbs; |
|
730 | + } |
|
731 | + |
|
732 | + /** |
|
733 | + * Show the 'View Message' button on messages. |
|
734 | + * |
|
735 | + * @param [type] $message_post_id |
|
736 | + * @return void |
|
737 | + */ |
|
738 | + public function lsx_sensei_view_message_button( $message_post_id ) { |
|
739 | + $message_link = get_the_permalink( $message_post_id ); |
|
740 | + echo '<a href="' . esc_url_raw( $message_link ) . '" class="btn view-msg-btn">' . wp_kses_post( 'View Message', 'lsx' ) . '</a>'; |
|
741 | + } |
|
742 | + |
|
743 | + /** |
|
744 | + * Show the 'Back to My Courses' button on messages. |
|
745 | + * |
|
746 | + * @param [type] $message_post_id |
|
747 | + * @return void |
|
748 | + */ |
|
749 | + public function lsx_sensei_back_message_button( $courses_link ) { |
|
750 | + $courses_link = '/my-courses/'; |
|
751 | + echo '<a href="' . esc_url_raw( $courses_link ) . '" class="btn border-btn my-courses-btn">' . wp_kses_post( 'My Courses', 'lsx' ) . '</a>'; |
|
752 | + } |
|
753 | + } |
|
754 | 754 | |
755 | 755 | endif; |
756 | 756 |
@@ -7,7 +7,7 @@ discard block |
||
7 | 7 | */ |
8 | 8 | |
9 | 9 | if ( ! defined( 'ABSPATH' ) ) { |
10 | - exit; |
|
10 | + exit; |
|
11 | 11 | } |
12 | 12 | |
13 | 13 | /** |
@@ -21,24 +21,24 @@ discard block |
||
21 | 21 | |
22 | 22 | if ( ! function_exists( 'lsx_kses_allowed_html' ) ) : |
23 | 23 | |
24 | - /** |
|
25 | - * Enable extra attributes (srcset, sizes) in img tag. |
|
26 | - * |
|
27 | - * @package lsx |
|
28 | - * @subpackage extras |
|
29 | - */ |
|
30 | - function lsx_kses_allowed_html( $allowedtags, $context ) { |
|
31 | - $allowedtags['img']['srcset'] = true; |
|
32 | - $allowedtags['img']['sizes'] = true; |
|
33 | - |
|
34 | - $allowedtags['input']['name'] = true; |
|
35 | - $allowedtags['input']['type'] = true; |
|
36 | - $allowedtags['input']['value'] = true; |
|
37 | - $allowedtags['input']['class'] = true; |
|
38 | - $allowedtags['input']['id'] = true; |
|
39 | - $allowedtags['script']['type'] = true; |
|
40 | - return $allowedtags; |
|
41 | - } |
|
24 | + /** |
|
25 | + * Enable extra attributes (srcset, sizes) in img tag. |
|
26 | + * |
|
27 | + * @package lsx |
|
28 | + * @subpackage extras |
|
29 | + */ |
|
30 | + function lsx_kses_allowed_html( $allowedtags, $context ) { |
|
31 | + $allowedtags['img']['srcset'] = true; |
|
32 | + $allowedtags['img']['sizes'] = true; |
|
33 | + |
|
34 | + $allowedtags['input']['name'] = true; |
|
35 | + $allowedtags['input']['type'] = true; |
|
36 | + $allowedtags['input']['value'] = true; |
|
37 | + $allowedtags['input']['class'] = true; |
|
38 | + $allowedtags['input']['id'] = true; |
|
39 | + $allowedtags['script']['type'] = true; |
|
40 | + return $allowedtags; |
|
41 | + } |
|
42 | 42 | |
43 | 43 | endif; |
44 | 44 | |
@@ -46,69 +46,69 @@ discard block |
||
46 | 46 | |
47 | 47 | if ( ! function_exists( 'lsx_body_class' ) ) : |
48 | 48 | |
49 | - /** |
|
50 | - * Add and remove body_class() classes. |
|
51 | - * |
|
52 | - * @package lsx |
|
53 | - * @subpackage extras |
|
54 | - */ |
|
55 | - function lsx_body_class( $classes ) { |
|
56 | - global $post; |
|
49 | + /** |
|
50 | + * Add and remove body_class() classes. |
|
51 | + * |
|
52 | + * @package lsx |
|
53 | + * @subpackage extras |
|
54 | + */ |
|
55 | + function lsx_body_class( $classes ) { |
|
56 | + global $post; |
|
57 | 57 | |
58 | - $header_layout = get_theme_mod( 'lsx_header_layout', 'inline' ); |
|
59 | - $classes[] = 'header-' . $header_layout; |
|
58 | + $header_layout = get_theme_mod( 'lsx_header_layout', 'inline' ); |
|
59 | + $classes[] = 'header-' . $header_layout; |
|
60 | 60 | |
61 | - $mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' ); |
|
62 | - $classes[] = 'mobile-header-' . $mobile_header_layout; |
|
61 | + $mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' ); |
|
62 | + $classes[] = 'mobile-header-' . $mobile_header_layout; |
|
63 | 63 | |
64 | - if ( isset( $post ) ) { |
|
65 | - $classes[] = $post->post_name; |
|
66 | - } |
|
64 | + if ( isset( $post ) ) { |
|
65 | + $classes[] = $post->post_name; |
|
66 | + } |
|
67 | 67 | |
68 | - if ( class_exists( 'LSX_Banners' ) && empty( apply_filters( 'lsx_banner_plugin_disable', false ) ) ) { |
|
69 | - $post_types = array( 'page', 'post' ); |
|
70 | - $post_types = apply_filters( 'lsx_allowed_post_type_banners', $post_types ); |
|
68 | + if ( class_exists( 'LSX_Banners' ) && empty( apply_filters( 'lsx_banner_plugin_disable', false ) ) ) { |
|
69 | + $post_types = array( 'page', 'post' ); |
|
70 | + $post_types = apply_filters( 'lsx_allowed_post_type_banners', $post_types ); |
|
71 | 71 | |
72 | - $img_group = get_post_meta( $post->ID, 'image_group', true ); |
|
72 | + $img_group = get_post_meta( $post->ID, 'image_group', true ); |
|
73 | 73 | |
74 | - if ( is_singular( $post_types ) && ! empty( $img_group ) && is_array( $img_group ) && ! empty( $img_group['banner_image'] ) ) { |
|
75 | - $classes[] = 'page-has-banner'; |
|
76 | - } |
|
74 | + if ( is_singular( $post_types ) && ! empty( $img_group ) && is_array( $img_group ) && ! empty( $img_group['banner_image'] ) ) { |
|
75 | + $classes[] = 'page-has-banner'; |
|
76 | + } |
|
77 | 77 | |
78 | - if ( is_singular( $post_types ) && empty( $img_group['banner_image'] ) && ( ! has_post_thumbnail( $post->ID ) ) ) { |
|
79 | - $classes[] = 'page-has-no-banner'; |
|
80 | - } |
|
81 | - } |
|
78 | + if ( is_singular( $post_types ) && empty( $img_group['banner_image'] ) && ( ! has_post_thumbnail( $post->ID ) ) ) { |
|
79 | + $classes[] = 'page-has-no-banner'; |
|
80 | + } |
|
81 | + } |
|
82 | 82 | |
83 | - if ( function_exists( 'tour_operator' ) ) { |
|
84 | - $post_types = array( 'page', 'post' ); |
|
83 | + if ( function_exists( 'tour_operator' ) ) { |
|
84 | + $post_types = array( 'page', 'post' ); |
|
85 | 85 | |
86 | - $classes[] = 'to-active'; |
|
87 | - } |
|
86 | + $classes[] = 'to-active'; |
|
87 | + } |
|
88 | 88 | |
89 | - if ( has_nav_menu( 'top-menu' ) || has_nav_menu( 'top-menu-left' ) ) { |
|
90 | - $classes[] = 'has-top-menu'; |
|
91 | - } |
|
89 | + if ( has_nav_menu( 'top-menu' ) || has_nav_menu( 'top-menu-left' ) ) { |
|
90 | + $classes[] = 'has-top-menu'; |
|
91 | + } |
|
92 | 92 | |
93 | - $fixed_header = get_theme_mod( 'lsx_header_fixed', false ); |
|
93 | + $fixed_header = get_theme_mod( 'lsx_header_fixed', false ); |
|
94 | 94 | |
95 | - if ( ( false !== $fixed_header ) && ( ! is_page_template( 'page-templates/template-cover.php' ) ) ) { |
|
96 | - $classes[] = 'top-menu-fixed'; |
|
97 | - } |
|
95 | + if ( ( false !== $fixed_header ) && ( ! is_page_template( 'page-templates/template-cover.php' ) ) ) { |
|
96 | + $classes[] = 'top-menu-fixed'; |
|
97 | + } |
|
98 | 98 | |
99 | - $search_form = get_theme_mod( 'lsx_header_search', false ); |
|
99 | + $search_form = get_theme_mod( 'lsx_header_search', false ); |
|
100 | 100 | |
101 | - if ( false !== $search_form ) { |
|
102 | - $classes[] = 'has-header-search'; |
|
103 | - } |
|
101 | + if ( false !== $search_form ) { |
|
102 | + $classes[] = 'has-header-search'; |
|
103 | + } |
|
104 | 104 | |
105 | - $register_enabled = get_option( 'users_can_register', false ); |
|
106 | - if ( ( $register_enabled ) && is_page( 'my-account' ) && is_singular() ) { |
|
107 | - $classes[] = 'register-enabled'; |
|
108 | - } |
|
105 | + $register_enabled = get_option( 'users_can_register', false ); |
|
106 | + if ( ( $register_enabled ) && is_page( 'my-account' ) && is_singular() ) { |
|
107 | + $classes[] = 'register-enabled'; |
|
108 | + } |
|
109 | 109 | |
110 | - return $classes; |
|
111 | - } |
|
110 | + return $classes; |
|
111 | + } |
|
112 | 112 | |
113 | 113 | endif; |
114 | 114 | |
@@ -116,22 +116,22 @@ discard block |
||
116 | 116 | |
117 | 117 | if ( ! function_exists( 'lsx_embed_wrap' ) ) : |
118 | 118 | |
119 | - /** |
|
120 | - * Wrap embedded media as suggested by Readability. |
|
121 | - * |
|
122 | - * @package lsx |
|
123 | - * @subpackage extras |
|
124 | - * |
|
125 | - * @link https://gist.github.com/965956 |
|
126 | - * @link http://www.readability.com/publishers/guidelines#publisher |
|
127 | - */ |
|
128 | - function lsx_embed_wrap( $cache, $url, $attr = '', $post_id = '' ) { |
|
129 | - if ( false !== strpos( $cache, '<iframe' ) ) { |
|
130 | - return '<div class="entry-content-asset">' . $cache . '</div>'; |
|
131 | - } |
|
132 | - |
|
133 | - return $cache; |
|
134 | - } |
|
119 | + /** |
|
120 | + * Wrap embedded media as suggested by Readability. |
|
121 | + * |
|
122 | + * @package lsx |
|
123 | + * @subpackage extras |
|
124 | + * |
|
125 | + * @link https://gist.github.com/965956 |
|
126 | + * @link http://www.readability.com/publishers/guidelines#publisher |
|
127 | + */ |
|
128 | + function lsx_embed_wrap( $cache, $url, $attr = '', $post_id = '' ) { |
|
129 | + if ( false !== strpos( $cache, '<iframe' ) ) { |
|
130 | + return '<div class="entry-content-asset">' . $cache . '</div>'; |
|
131 | + } |
|
132 | + |
|
133 | + return $cache; |
|
134 | + } |
|
135 | 135 | |
136 | 136 | endif; |
137 | 137 | |
@@ -139,15 +139,15 @@ discard block |
||
139 | 139 | |
140 | 140 | if ( ! function_exists( 'lsx_remove_self_closing_tags' ) ) : |
141 | 141 | |
142 | - /** |
|
143 | - * Remove unnecessary self-closing tags. |
|
144 | - * |
|
145 | - * @package lsx |
|
146 | - * @subpackage extras |
|
147 | - */ |
|
148 | - function lsx_remove_self_closing_tags( $input ) { |
|
149 | - return str_replace( ' />', '>', $input ); |
|
150 | - } |
|
142 | + /** |
|
143 | + * Remove unnecessary self-closing tags. |
|
144 | + * |
|
145 | + * @package lsx |
|
146 | + * @subpackage extras |
|
147 | + */ |
|
148 | + function lsx_remove_self_closing_tags( $input ) { |
|
149 | + return str_replace( ' />', '>', $input ); |
|
150 | + } |
|
151 | 151 | |
152 | 152 | endif; |
153 | 153 | |
@@ -157,171 +157,171 @@ discard block |
||
157 | 157 | |
158 | 158 | if ( ! function_exists( 'lsx_is_element_empty' ) ) : |
159 | 159 | |
160 | - /** |
|
161 | - * Checks if a Nav $element is empty or not. |
|
162 | - * |
|
163 | - * @package lsx |
|
164 | - * @subpackage extras |
|
165 | - */ |
|
166 | - function lsx_is_element_empty( $element ) { |
|
167 | - $element = trim( $element ); |
|
168 | - return empty( $element ) ? false : true; |
|
169 | - } |
|
160 | + /** |
|
161 | + * Checks if a Nav $element is empty or not. |
|
162 | + * |
|
163 | + * @package lsx |
|
164 | + * @subpackage extras |
|
165 | + */ |
|
166 | + function lsx_is_element_empty( $element ) { |
|
167 | + $element = trim( $element ); |
|
168 | + return empty( $element ) ? false : true; |
|
169 | + } |
|
170 | 170 | |
171 | 171 | endif; |
172 | 172 | |
173 | 173 | if ( ! function_exists( 'lsx_get_thumbnail' ) ) : |
174 | 174 | |
175 | - /** |
|
176 | - * return the responsive images. |
|
177 | - * |
|
178 | - * @package lsx |
|
179 | - * @subpackage extras |
|
180 | - */ |
|
181 | - function lsx_get_thumbnail( $size, $image_src = false ) { |
|
182 | - global $wp_version; |
|
183 | - |
|
184 | - if ( false === $image_src ) { |
|
185 | - $post_id = get_the_ID(); |
|
186 | - $post_thumbnail_id = get_post_thumbnail_id( $post_id ); |
|
187 | - if ( empty( $post_thumbnail_id ) ) { |
|
188 | - $post_thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $post_thumbnail_id, $post_id ); |
|
189 | - } |
|
190 | - } elseif ( false !== $image_src ) { |
|
191 | - if ( is_numeric( $image_src ) ) { |
|
192 | - $post_thumbnail_id = $image_src; |
|
193 | - } else { |
|
194 | - $post_thumbnail_id = lsx_get_attachment_id_from_src( $image_src ); |
|
195 | - if ( empty( $post_thumbnail_id ) ) { |
|
196 | - $post_thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $post_thumbnail_id, $post_id ); |
|
197 | - } |
|
198 | - } |
|
199 | - } |
|
200 | - |
|
201 | - $size = apply_filters( 'lsx_thumbnail_size', $size ); |
|
202 | - $img = ''; |
|
203 | - $lazy_img = ''; |
|
204 | - $image_url = ''; |
|
205 | - |
|
206 | - if ( 'lsx-thumbnail-single' === $size || 'lsx-thumbnail-wide' === $size || 'lsx-thumbnail-square' === $size || 'thumbnail' === $size ) { |
|
207 | - $srcset = false; |
|
208 | - if ( ( ( 'team' === get_post_type() ) || ( 'testimonial' === get_post_type() ) ) && is_search() ) { |
|
209 | - $img = get_the_post_thumbnail_url( get_the_ID(), 'lsx-thumbnail-wide' ); |
|
210 | - } else { |
|
211 | - $temp_img = wp_get_attachment_image_src( $post_thumbnail_id, $size ); |
|
212 | - if ( ! empty( $temp_img ) ) { |
|
213 | - $img = $temp_img[0]; |
|
214 | - } |
|
215 | - } |
|
216 | - } else { |
|
217 | - $srcset = true; |
|
218 | - $img = wp_get_attachment_image_srcset( $post_thumbnail_id, $size ); |
|
219 | - |
|
220 | - $temp_lazy = wp_get_attachment_image_src( $post_thumbnail_id, $size ); |
|
221 | - if ( ! empty( $temp_lazy ) ) { |
|
222 | - $lazy_img = $temp_lazy[0]; |
|
223 | - } |
|
224 | - |
|
225 | - if ( empty( $img ) ) { |
|
226 | - $srcset = false; |
|
227 | - if ( ! empty( $lazy_img ) ) { |
|
228 | - $img = $lazy_img; |
|
229 | - } |
|
230 | - } |
|
231 | - } |
|
232 | - |
|
233 | - if ( '' !== $img ) { |
|
234 | - |
|
235 | - $image_url = $img; |
|
236 | - |
|
237 | - $img = '<img title="' . the_title_attribute( 'echo=0' ) . '" alt="' . the_title_attribute( 'echo=0' ) . '" class="attachment-responsive wp-post-image lsx-responsive" '; |
|
238 | - |
|
239 | - if ( version_compare( $wp_version, '5.5', '>=' ) ) { |
|
240 | - $img = '<img loading="lazy" title="' . the_title_attribute( 'echo=0' ) . '" alt="' . the_title_attribute( 'echo=0' ) . '" class="attachment-responsive wp-post-image lsx-responsive wp-lazy" '; |
|
241 | - } |
|
242 | - |
|
243 | - if ( $srcset ) { |
|
244 | - $img .= 'srcset="' . esc_attr( $image_url ) . '" '; |
|
245 | - } else { |
|
246 | - $img .= 'src="' . esc_url( $image_url ) . '" '; |
|
247 | - } |
|
248 | - $img .= '/>'; |
|
249 | - |
|
250 | - if ( ! version_compare( $wp_version, '5.5', '>=' ) ) { |
|
251 | - $img = apply_filters( 'lsx_lazyload_filter_images', $img ); |
|
252 | - $img = apply_filters( 'lsx_lazyload_slider_images', $img, $post_thumbnail_id, $size, $srcset, $image_url ); |
|
253 | - } |
|
254 | - } |
|
255 | - |
|
256 | - return $img; |
|
257 | - } |
|
175 | + /** |
|
176 | + * return the responsive images. |
|
177 | + * |
|
178 | + * @package lsx |
|
179 | + * @subpackage extras |
|
180 | + */ |
|
181 | + function lsx_get_thumbnail( $size, $image_src = false ) { |
|
182 | + global $wp_version; |
|
183 | + |
|
184 | + if ( false === $image_src ) { |
|
185 | + $post_id = get_the_ID(); |
|
186 | + $post_thumbnail_id = get_post_thumbnail_id( $post_id ); |
|
187 | + if ( empty( $post_thumbnail_id ) ) { |
|
188 | + $post_thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $post_thumbnail_id, $post_id ); |
|
189 | + } |
|
190 | + } elseif ( false !== $image_src ) { |
|
191 | + if ( is_numeric( $image_src ) ) { |
|
192 | + $post_thumbnail_id = $image_src; |
|
193 | + } else { |
|
194 | + $post_thumbnail_id = lsx_get_attachment_id_from_src( $image_src ); |
|
195 | + if ( empty( $post_thumbnail_id ) ) { |
|
196 | + $post_thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $post_thumbnail_id, $post_id ); |
|
197 | + } |
|
198 | + } |
|
199 | + } |
|
200 | + |
|
201 | + $size = apply_filters( 'lsx_thumbnail_size', $size ); |
|
202 | + $img = ''; |
|
203 | + $lazy_img = ''; |
|
204 | + $image_url = ''; |
|
205 | + |
|
206 | + if ( 'lsx-thumbnail-single' === $size || 'lsx-thumbnail-wide' === $size || 'lsx-thumbnail-square' === $size || 'thumbnail' === $size ) { |
|
207 | + $srcset = false; |
|
208 | + if ( ( ( 'team' === get_post_type() ) || ( 'testimonial' === get_post_type() ) ) && is_search() ) { |
|
209 | + $img = get_the_post_thumbnail_url( get_the_ID(), 'lsx-thumbnail-wide' ); |
|
210 | + } else { |
|
211 | + $temp_img = wp_get_attachment_image_src( $post_thumbnail_id, $size ); |
|
212 | + if ( ! empty( $temp_img ) ) { |
|
213 | + $img = $temp_img[0]; |
|
214 | + } |
|
215 | + } |
|
216 | + } else { |
|
217 | + $srcset = true; |
|
218 | + $img = wp_get_attachment_image_srcset( $post_thumbnail_id, $size ); |
|
219 | + |
|
220 | + $temp_lazy = wp_get_attachment_image_src( $post_thumbnail_id, $size ); |
|
221 | + if ( ! empty( $temp_lazy ) ) { |
|
222 | + $lazy_img = $temp_lazy[0]; |
|
223 | + } |
|
224 | + |
|
225 | + if ( empty( $img ) ) { |
|
226 | + $srcset = false; |
|
227 | + if ( ! empty( $lazy_img ) ) { |
|
228 | + $img = $lazy_img; |
|
229 | + } |
|
230 | + } |
|
231 | + } |
|
232 | + |
|
233 | + if ( '' !== $img ) { |
|
234 | + |
|
235 | + $image_url = $img; |
|
236 | + |
|
237 | + $img = '<img title="' . the_title_attribute( 'echo=0' ) . '" alt="' . the_title_attribute( 'echo=0' ) . '" class="attachment-responsive wp-post-image lsx-responsive" '; |
|
238 | + |
|
239 | + if ( version_compare( $wp_version, '5.5', '>=' ) ) { |
|
240 | + $img = '<img loading="lazy" title="' . the_title_attribute( 'echo=0' ) . '" alt="' . the_title_attribute( 'echo=0' ) . '" class="attachment-responsive wp-post-image lsx-responsive wp-lazy" '; |
|
241 | + } |
|
242 | + |
|
243 | + if ( $srcset ) { |
|
244 | + $img .= 'srcset="' . esc_attr( $image_url ) . '" '; |
|
245 | + } else { |
|
246 | + $img .= 'src="' . esc_url( $image_url ) . '" '; |
|
247 | + } |
|
248 | + $img .= '/>'; |
|
249 | + |
|
250 | + if ( ! version_compare( $wp_version, '5.5', '>=' ) ) { |
|
251 | + $img = apply_filters( 'lsx_lazyload_filter_images', $img ); |
|
252 | + $img = apply_filters( 'lsx_lazyload_slider_images', $img, $post_thumbnail_id, $size, $srcset, $image_url ); |
|
253 | + } |
|
254 | + } |
|
255 | + |
|
256 | + return $img; |
|
257 | + } |
|
258 | 258 | |
259 | 259 | endif; |
260 | 260 | |
261 | 261 | if ( ! function_exists( 'lsx_thumbnail' ) ) : |
262 | 262 | |
263 | - /** |
|
264 | - * Output the Resonsive Images. |
|
265 | - * |
|
266 | - * @package lsx |
|
267 | - * @subpackage extras |
|
268 | - */ |
|
269 | - function lsx_thumbnail( $size = 'thumbnail', $image_src = false ) { |
|
270 | - echo wp_kses_post( lsx_get_thumbnail( $size, $image_src ) ); |
|
271 | - } |
|
263 | + /** |
|
264 | + * Output the Resonsive Images. |
|
265 | + * |
|
266 | + * @package lsx |
|
267 | + * @subpackage extras |
|
268 | + */ |
|
269 | + function lsx_thumbnail( $size = 'thumbnail', $image_src = false ) { |
|
270 | + echo wp_kses_post( lsx_get_thumbnail( $size, $image_src ) ); |
|
271 | + } |
|
272 | 272 | |
273 | 273 | endif; |
274 | 274 | |
275 | 275 | if ( ! function_exists( 'lsx_get_attachment_id_from_src' ) ) : |
276 | 276 | |
277 | - /** |
|
278 | - * Gets the attachments ID from the src. |
|
279 | - * |
|
280 | - * @package lsx |
|
281 | - * @subpackage extras |
|
282 | - */ |
|
283 | - function lsx_get_attachment_id_from_src( $image_src ) { |
|
284 | - $post_id = wp_cache_get( $image_src, 'lsx_get_attachment_id_from_src' ); |
|
277 | + /** |
|
278 | + * Gets the attachments ID from the src. |
|
279 | + * |
|
280 | + * @package lsx |
|
281 | + * @subpackage extras |
|
282 | + */ |
|
283 | + function lsx_get_attachment_id_from_src( $image_src ) { |
|
284 | + $post_id = wp_cache_get( $image_src, 'lsx_get_attachment_id_from_src' ); |
|
285 | 285 | |
286 | - if ( false === $post_id ) { |
|
287 | - global $wpdb; |
|
288 | - $post_id = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE guid='%s' LIMIT 1", $image_src ) ); |
|
289 | - wp_cache_set( $image_src, $post_id, 'lsx_get_attachment_id_from_src', 3600 ); |
|
290 | - } |
|
286 | + if ( false === $post_id ) { |
|
287 | + global $wpdb; |
|
288 | + $post_id = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE guid='%s' LIMIT 1", $image_src ) ); |
|
289 | + wp_cache_set( $image_src, $post_id, 'lsx_get_attachment_id_from_src', 3600 ); |
|
290 | + } |
|
291 | 291 | |
292 | - return $post_id; |
|
293 | - } |
|
292 | + return $post_id; |
|
293 | + } |
|
294 | 294 | |
295 | 295 | endif; |
296 | 296 | |
297 | 297 | if ( ! function_exists( 'lsx_page_banner' ) ) : |
298 | 298 | |
299 | - /** |
|
300 | - * Add Featured Image as Banner on Single Pages. |
|
301 | - * |
|
302 | - * @package lsx |
|
303 | - * @subpackage extras |
|
304 | - */ |
|
305 | - function lsx_page_banner() { |
|
306 | - if ( true === apply_filters( 'lsx_page_banner_disable', false ) ) { |
|
307 | - return; |
|
308 | - } |
|
309 | - |
|
310 | - $post_types = array( 'page', 'post' ); |
|
311 | - $post_types = apply_filters( 'lsx_allowed_post_type_banners', $post_types ); |
|
312 | - |
|
313 | - if ( is_singular( $post_types ) && has_post_thumbnail() ) : |
|
314 | - $bg_image = ''; |
|
315 | - |
|
316 | - if ( has_post_thumbnail() ) { |
|
317 | - $temp_bg_image = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ), 'full' ); |
|
318 | - if ( ! empty( $temp_bg_image ) ) { |
|
319 | - $bg_image = $temp_bg_image[0]; |
|
320 | - } |
|
321 | - } |
|
322 | - |
|
323 | - if ( '' !== $bg_image ) : |
|
324 | - ?> |
|
299 | + /** |
|
300 | + * Add Featured Image as Banner on Single Pages. |
|
301 | + * |
|
302 | + * @package lsx |
|
303 | + * @subpackage extras |
|
304 | + */ |
|
305 | + function lsx_page_banner() { |
|
306 | + if ( true === apply_filters( 'lsx_page_banner_disable', false ) ) { |
|
307 | + return; |
|
308 | + } |
|
309 | + |
|
310 | + $post_types = array( 'page', 'post' ); |
|
311 | + $post_types = apply_filters( 'lsx_allowed_post_type_banners', $post_types ); |
|
312 | + |
|
313 | + if ( is_singular( $post_types ) && has_post_thumbnail() ) : |
|
314 | + $bg_image = ''; |
|
315 | + |
|
316 | + if ( has_post_thumbnail() ) { |
|
317 | + $temp_bg_image = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ), 'full' ); |
|
318 | + if ( ! empty( $temp_bg_image ) ) { |
|
319 | + $bg_image = $temp_bg_image[0]; |
|
320 | + } |
|
321 | + } |
|
322 | + |
|
323 | + if ( '' !== $bg_image ) : |
|
324 | + ?> |
|
325 | 325 | <div class="page-banner-wrap"> |
326 | 326 | <div class="page-banner"> |
327 | 327 | <?php lsx_banner_inner_top(); ?> |
@@ -339,9 +339,9 @@ discard block |
||
339 | 339 | </div> |
340 | 340 | </div> |
341 | 341 | <?php |
342 | - endif; |
|
343 | - endif; |
|
344 | - } |
|
342 | + endif; |
|
343 | + endif; |
|
344 | + } |
|
345 | 345 | |
346 | 346 | endif; |
347 | 347 | |
@@ -351,41 +351,41 @@ discard block |
||
351 | 351 | |
352 | 352 | if ( ! function_exists( 'lsx_disable_banner_for_blocks' ) ) : |
353 | 353 | |
354 | - /** |
|
355 | - * Disable the Banner if the page is using Blocks |
|
356 | - * |
|
357 | - * @package lsx |
|
358 | - * @subpackage extras |
|
359 | - * |
|
360 | - * @param $disable boolean |
|
361 | - * @return boolean |
|
362 | - */ |
|
363 | - function lsx_disable_banner_for_blocks( $disable ) { |
|
364 | - $queried_object = get_queried_object_id(); |
|
365 | - $show_on_front = get_option( 'show_on_front' ); |
|
366 | - |
|
367 | - if ( 'page' === $show_on_front && (int) get_option( 'page_for_posts' ) === $queried_object ) { |
|
368 | - return $disable; |
|
369 | - } |
|
370 | - |
|
371 | - if ( function_exists( 'has_blocks' ) && has_blocks() && ( ! is_archive() ) ) { |
|
372 | - $disable = true; |
|
354 | + /** |
|
355 | + * Disable the Banner if the page is using Blocks |
|
356 | + * |
|
357 | + * @package lsx |
|
358 | + * @subpackage extras |
|
359 | + * |
|
360 | + * @param $disable boolean |
|
361 | + * @return boolean |
|
362 | + */ |
|
363 | + function lsx_disable_banner_for_blocks( $disable ) { |
|
364 | + $queried_object = get_queried_object_id(); |
|
365 | + $show_on_front = get_option( 'show_on_front' ); |
|
366 | + |
|
367 | + if ( 'page' === $show_on_front && (int) get_option( 'page_for_posts' ) === $queried_object ) { |
|
368 | + return $disable; |
|
369 | + } |
|
370 | + |
|
371 | + if ( function_exists( 'has_blocks' ) && has_blocks() && ( ! is_archive() ) ) { |
|
372 | + $disable = true; |
|
373 | 373 | |
374 | 374 | |
375 | - if ( function_exists( 'lsx_to_get_post_types' ) ) { |
|
376 | - $post_types = array_keys( lsx_to_get_post_types() ); |
|
377 | - if ( is_singular( $post_types ) ) { |
|
378 | - $disable = false; |
|
379 | - } |
|
380 | - } |
|
381 | - } |
|
382 | - |
|
383 | - // Single projects will still have banners. |
|
384 | - if ( function_exists( 'has_blocks' ) && has_blocks() && ( is_singular( 'project' ) ) ) { |
|
385 | - $disable = false; |
|
386 | - } |
|
387 | - return $disable; |
|
388 | - } |
|
375 | + if ( function_exists( 'lsx_to_get_post_types' ) ) { |
|
376 | + $post_types = array_keys( lsx_to_get_post_types() ); |
|
377 | + if ( is_singular( $post_types ) ) { |
|
378 | + $disable = false; |
|
379 | + } |
|
380 | + } |
|
381 | + } |
|
382 | + |
|
383 | + // Single projects will still have banners. |
|
384 | + if ( function_exists( 'has_blocks' ) && has_blocks() && ( is_singular( 'project' ) ) ) { |
|
385 | + $disable = false; |
|
386 | + } |
|
387 | + return $disable; |
|
388 | + } |
|
389 | 389 | |
390 | 390 | endif; |
391 | 391 | |
@@ -394,15 +394,15 @@ discard block |
||
394 | 394 | |
395 | 395 | if ( ! function_exists( 'lsx_excerpt_more' ) ) : |
396 | 396 | |
397 | - /** |
|
398 | - * Replaces the excerpt "more" text by a link. |
|
399 | - * |
|
400 | - * @package lsx |
|
401 | - * @subpackage extras |
|
402 | - */ |
|
403 | - function lsx_excerpt_more( $more ) { |
|
404 | - return '...'; |
|
405 | - } |
|
397 | + /** |
|
398 | + * Replaces the excerpt "more" text by a link. |
|
399 | + * |
|
400 | + * @package lsx |
|
401 | + * @subpackage extras |
|
402 | + */ |
|
403 | + function lsx_excerpt_more( $more ) { |
|
404 | + return '...'; |
|
405 | + } |
|
406 | 406 | |
407 | 407 | endif; |
408 | 408 | |
@@ -410,50 +410,50 @@ discard block |
||
410 | 410 | |
411 | 411 | if ( ! function_exists( 'lsx_the_excerpt_filter' ) ) : |
412 | 412 | |
413 | - /** |
|
414 | - * Add a continue reading link to the excerpt. |
|
415 | - * |
|
416 | - * @package lsx |
|
417 | - * @subpackage extras |
|
418 | - */ |
|
419 | - function lsx_the_excerpt_filter( $excerpt ) { |
|
420 | - |
|
421 | - $post_formats = array( |
|
422 | - 'aside' => 'aside', |
|
423 | - 'gallery' => 'gallery', |
|
424 | - 'link' => 'link', |
|
425 | - 'image' => 'image', |
|
426 | - 'quote' => 'quote', |
|
427 | - 'status' => 'status', |
|
428 | - 'video' => 'video', |
|
429 | - 'audio' => 'audio', |
|
430 | - ); |
|
431 | - |
|
432 | - $show_full_content = has_post_format( apply_filters( 'lsx_the_excerpt_filter_post_types', $post_formats ) ); |
|
433 | - |
|
434 | - if ( ! $show_full_content ) { |
|
435 | - if ( '' !== $excerpt && ! stristr( $excerpt, 'moretag' ) ) { |
|
436 | - $pagination = wp_link_pages( |
|
437 | - array( |
|
438 | - 'before' => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">', |
|
439 | - 'after' => '</div></div>', |
|
440 | - 'link_before' => '<span>', |
|
441 | - 'link_after' => '</span>', |
|
442 | - 'echo' => 0, |
|
443 | - ) |
|
444 | - ); |
|
445 | - |
|
446 | - if ( ! empty( $pagination ) ) { |
|
447 | - $excerpt .= $pagination; |
|
448 | - } else { |
|
449 | - $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>'; |
|
450 | - $excerpt .= apply_filters( 'excerpt_more_p', $excerpt_more ); |
|
451 | - } |
|
452 | - } |
|
453 | - } |
|
454 | - |
|
455 | - return $excerpt; |
|
456 | - } |
|
413 | + /** |
|
414 | + * Add a continue reading link to the excerpt. |
|
415 | + * |
|
416 | + * @package lsx |
|
417 | + * @subpackage extras |
|
418 | + */ |
|
419 | + function lsx_the_excerpt_filter( $excerpt ) { |
|
420 | + |
|
421 | + $post_formats = array( |
|
422 | + 'aside' => 'aside', |
|
423 | + 'gallery' => 'gallery', |
|
424 | + 'link' => 'link', |
|
425 | + 'image' => 'image', |
|
426 | + 'quote' => 'quote', |
|
427 | + 'status' => 'status', |
|
428 | + 'video' => 'video', |
|
429 | + 'audio' => 'audio', |
|
430 | + ); |
|
431 | + |
|
432 | + $show_full_content = has_post_format( apply_filters( 'lsx_the_excerpt_filter_post_types', $post_formats ) ); |
|
433 | + |
|
434 | + if ( ! $show_full_content ) { |
|
435 | + if ( '' !== $excerpt && ! stristr( $excerpt, 'moretag' ) ) { |
|
436 | + $pagination = wp_link_pages( |
|
437 | + array( |
|
438 | + 'before' => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">', |
|
439 | + 'after' => '</div></div>', |
|
440 | + 'link_before' => '<span>', |
|
441 | + 'link_after' => '</span>', |
|
442 | + 'echo' => 0, |
|
443 | + ) |
|
444 | + ); |
|
445 | + |
|
446 | + if ( ! empty( $pagination ) ) { |
|
447 | + $excerpt .= $pagination; |
|
448 | + } else { |
|
449 | + $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>'; |
|
450 | + $excerpt .= apply_filters( 'excerpt_more_p', $excerpt_more ); |
|
451 | + } |
|
452 | + } |
|
453 | + } |
|
454 | + |
|
455 | + return $excerpt; |
|
456 | + } |
|
457 | 457 | |
458 | 458 | endif; |
459 | 459 | |
@@ -461,29 +461,29 @@ discard block |
||
461 | 461 | |
462 | 462 | if ( ! function_exists( 'lsx_full_width_widget_classes' ) ) : |
463 | 463 | |
464 | - /** |
|
465 | - * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget. |
|
466 | - * |
|
467 | - * @package lsx |
|
468 | - * @subpackage extras |
|
469 | - */ |
|
470 | - function lsx_full_width_widget_classes( $params ) { |
|
471 | - if ( is_admin() ) { |
|
472 | - return $params; |
|
473 | - } |
|
464 | + /** |
|
465 | + * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget. |
|
466 | + * |
|
467 | + * @package lsx |
|
468 | + * @subpackage extras |
|
469 | + */ |
|
470 | + function lsx_full_width_widget_classes( $params ) { |
|
471 | + if ( is_admin() ) { |
|
472 | + return $params; |
|
473 | + } |
|
474 | 474 | |
475 | - global $wp_registered_widgets; |
|
475 | + global $wp_registered_widgets; |
|
476 | 476 | |
477 | - $widget_id = $params[0]['widget_id']; |
|
478 | - $widget_name = $params[0]['widget_name']; |
|
477 | + $widget_id = $params[0]['widget_id']; |
|
478 | + $widget_name = $params[0]['widget_name']; |
|
479 | 479 | |
480 | - if ( 'Text' === $widget_name ) { |
|
481 | - $wp_registered_widgets[ $widget_id ]['original_callback'] = $wp_registered_widgets[ $widget_id ]['callback']; |
|
482 | - $wp_registered_widgets[ $widget_id ]['callback'] = 'lsx_full_width_widget_custom_callback'; |
|
483 | - } |
|
480 | + if ( 'Text' === $widget_name ) { |
|
481 | + $wp_registered_widgets[ $widget_id ]['original_callback'] = $wp_registered_widgets[ $widget_id ]['callback']; |
|
482 | + $wp_registered_widgets[ $widget_id ]['callback'] = 'lsx_full_width_widget_custom_callback'; |
|
483 | + } |
|
484 | 484 | |
485 | - return $params; |
|
486 | - } |
|
485 | + return $params; |
|
486 | + } |
|
487 | 487 | |
488 | 488 | endif; |
489 | 489 | |
@@ -491,55 +491,55 @@ discard block |
||
491 | 491 | |
492 | 492 | if ( ! function_exists( 'lsx_full_width_widget_custom_callback' ) ) : |
493 | 493 | |
494 | - /** |
|
495 | - * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget. |
|
496 | - * |
|
497 | - * @package lsx |
|
498 | - * @subpackage extras |
|
499 | - */ |
|
500 | - function full_width_widget_custom_callback() { |
|
501 | - global $wp_registered_widgets; |
|
494 | + /** |
|
495 | + * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget. |
|
496 | + * |
|
497 | + * @package lsx |
|
498 | + * @subpackage extras |
|
499 | + */ |
|
500 | + function full_width_widget_custom_callback() { |
|
501 | + global $wp_registered_widgets; |
|
502 | 502 | |
503 | - $original_callback_params = func_get_args(); |
|
504 | - $widget_id = $original_callback_params[0]['widget_id']; |
|
503 | + $original_callback_params = func_get_args(); |
|
504 | + $widget_id = $original_callback_params[0]['widget_id']; |
|
505 | 505 | |
506 | - $original_callback = $wp_registered_widgets[ $widget_id ]['original_callback']; |
|
507 | - $wp_registered_widgets[ $widget_id ]['callback'] = $original_callback; |
|
506 | + $original_callback = $wp_registered_widgets[ $widget_id ]['original_callback']; |
|
507 | + $wp_registered_widgets[ $widget_id ]['callback'] = $original_callback; |
|
508 | 508 | |
509 | - $widget_id_base = $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base; |
|
509 | + $widget_id_base = $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base; |
|
510 | 510 | |
511 | - $widget_classname = ''; |
|
511 | + $widget_classname = ''; |
|
512 | 512 | |
513 | - if ( is_callable( $original_callback ) ) { |
|
514 | - ob_start(); |
|
515 | - call_user_func_array( $original_callback, $original_callback_params ); |
|
516 | - $widget_output = ob_get_clean(); |
|
513 | + if ( is_callable( $original_callback ) ) { |
|
514 | + ob_start(); |
|
515 | + call_user_func_array( $original_callback, $original_callback_params ); |
|
516 | + $widget_output = ob_get_clean(); |
|
517 | 517 | |
518 | - echo wp_kses_post( apply_filters( 'lsx_widget_output', $widget_output, $widget_id_base, $widget_classname, $widget_id ) ); |
|
519 | - } |
|
520 | - } |
|
518 | + echo wp_kses_post( apply_filters( 'lsx_widget_output', $widget_output, $widget_id_base, $widget_classname, $widget_id ) ); |
|
519 | + } |
|
520 | + } |
|
521 | 521 | |
522 | 522 | endif; |
523 | 523 | |
524 | 524 | if ( ! function_exists( 'lsx_full_width_widget_output' ) ) : |
525 | 525 | |
526 | - /** |
|
527 | - * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget. |
|
528 | - * |
|
529 | - * @package lsx |
|
530 | - * @subpackage extras |
|
531 | - */ |
|
532 | - function lsx_full_width_widget_output( $widget_output, $widget_id_base, $widget_id ) { |
|
533 | - if ( 'text' === $widget_id_base ) { |
|
534 | - if ( false !== strpos( $widget_output, '<div class="lsx-full-width-alt">' ) ) { |
|
535 | - $widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width_alt"', $widget_output ); |
|
536 | - } elseif ( false !== strpos( $widget_output, '<div class="lsx-full-width">' ) ) { |
|
537 | - $widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width"', $widget_output ); |
|
538 | - } |
|
539 | - } |
|
540 | - |
|
541 | - return $widget_output; |
|
542 | - } |
|
526 | + /** |
|
527 | + * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget. |
|
528 | + * |
|
529 | + * @package lsx |
|
530 | + * @subpackage extras |
|
531 | + */ |
|
532 | + function lsx_full_width_widget_output( $widget_output, $widget_id_base, $widget_id ) { |
|
533 | + if ( 'text' === $widget_id_base ) { |
|
534 | + if ( false !== strpos( $widget_output, '<div class="lsx-full-width-alt">' ) ) { |
|
535 | + $widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width_alt"', $widget_output ); |
|
536 | + } elseif ( false !== strpos( $widget_output, '<div class="lsx-full-width">' ) ) { |
|
537 | + $widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width"', $widget_output ); |
|
538 | + } |
|
539 | + } |
|
540 | + |
|
541 | + return $widget_output; |
|
542 | + } |
|
543 | 543 | |
544 | 544 | endif; |
545 | 545 | |
@@ -549,29 +549,29 @@ discard block |
||
549 | 549 | * Check if the content has a restricted post format that needs to show a full excerpt. |
550 | 550 | */ |
551 | 551 | function lsx_post_format_force_content_on_list() { |
552 | - $post_formats = apply_filters( 'lsx_post_format_force_content_on_list', |
|
553 | - array( |
|
554 | - 'video' => 'video', |
|
555 | - 'audio' => 'audio', |
|
556 | - 'quote' => 'quote', |
|
557 | - 'link' => 'link', |
|
558 | - ) |
|
559 | - ); |
|
560 | - $return = false; |
|
561 | - if ( ! has_post_format( $post_formats ) ) { |
|
562 | - $return = true; |
|
563 | - } |
|
564 | - return $return; |
|
552 | + $post_formats = apply_filters( 'lsx_post_format_force_content_on_list', |
|
553 | + array( |
|
554 | + 'video' => 'video', |
|
555 | + 'audio' => 'audio', |
|
556 | + 'quote' => 'quote', |
|
557 | + 'link' => 'link', |
|
558 | + ) |
|
559 | + ); |
|
560 | + $return = false; |
|
561 | + if ( ! has_post_format( $post_formats ) ) { |
|
562 | + $return = true; |
|
563 | + } |
|
564 | + return $return; |
|
565 | 565 | } |
566 | 566 | |
567 | 567 | /** |
568 | 568 | * Remove the Hentry Class Every |
569 | 569 | */ |
570 | 570 | function lsx_remove_hentry( $classes ) { |
571 | - if ( 'post' !== get_post_type() ) { |
|
572 | - $classes = array_diff( $classes, array( 'hentry' ) ); |
|
573 | - } |
|
574 | - return $classes; |
|
571 | + if ( 'post' !== get_post_type() ) { |
|
572 | + $classes = array_diff( $classes, array( 'hentry' ) ); |
|
573 | + } |
|
574 | + return $classes; |
|
575 | 575 | } |
576 | 576 | add_filter( 'post_class', 'lsx_remove_hentry' ); |
577 | 577 | |
@@ -579,12 +579,12 @@ discard block |
||
579 | 579 | * Strip Excerpts. |
580 | 580 | */ |
581 | 581 | function lsx_strip_excerpt( $content ) { |
582 | - if ( is_search() || is_archive() || ( is_blog_installed() && ! is_single() && ! is_page() ) ) { |
|
583 | - $content = strip_shortcodes( $content ); |
|
584 | - $content = str_replace( ']]>', ']]>', $content ); |
|
585 | - $content = strip_tags( $content ); |
|
586 | - } |
|
587 | - return $content; |
|
582 | + if ( is_search() || is_archive() || ( is_blog_installed() && ! is_single() && ! is_page() ) ) { |
|
583 | + $content = strip_shortcodes( $content ); |
|
584 | + $content = str_replace( ']]>', ']]>', $content ); |
|
585 | + $content = strip_tags( $content ); |
|
586 | + } |
|
587 | + return $content; |
|
588 | 588 | } |
589 | 589 | add_filter( 'the_content', 'lsx_strip_excerpt' ); |
590 | 590 | |
@@ -592,11 +592,11 @@ discard block |
||
592 | 592 | * Disable Gutenberg for LSX Custom Post Types. |
593 | 593 | */ |
594 | 594 | function lsx_disable_gutenberg_product_type( $is_enabled, $post_type ) { |
595 | - if ( 'testimonial' === $post_type || 'team' === $post_type || 'project' === $post_type ) { |
|
596 | - return false; |
|
597 | - } |
|
595 | + if ( 'testimonial' === $post_type || 'team' === $post_type || 'project' === $post_type ) { |
|
596 | + return false; |
|
597 | + } |
|
598 | 598 | |
599 | - return $is_enabled; |
|
599 | + return $is_enabled; |
|
600 | 600 | } |
601 | 601 | add_filter( 'gutenberg_add_edit_link_for_post_type', 'lsx_disable_gutenberg_product_type', 10, 2 ); |
602 | 602 | |
@@ -608,33 +608,33 @@ discard block |
||
608 | 608 | */ |
609 | 609 | function lsx_breadcrumbs_blog_link( $crumbs ) { |
610 | 610 | |
611 | - $show_on_front = get_option( 'show_on_front' ); |
|
612 | - |
|
613 | - if ( 'page' === $show_on_front && ( is_category() || is_tag() ) ) { |
|
614 | - |
|
615 | - $blog_page = get_option( 'page_for_posts' ); |
|
616 | - if ( false !== $blog_page && '' !== $blog_page ) { |
|
617 | - |
|
618 | - $new_crumbs = array(); |
|
619 | - $new_crumbs[0] = $crumbs[0]; |
|
620 | - |
|
621 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
622 | - $new_crumbs[1] = array( |
|
623 | - 0 => get_the_title( $blog_page ), |
|
624 | - 1 => get_permalink( $blog_page ), |
|
625 | - ); |
|
626 | - } else { |
|
627 | - $new_crumbs[1] = array( |
|
628 | - 'text' => get_the_title( $blog_page ), |
|
629 | - 'url' => get_permalink( $blog_page ), |
|
630 | - ); |
|
631 | - } |
|
632 | - $new_crumbs[2] = $crumbs[1]; |
|
633 | - $crumbs = $new_crumbs; |
|
634 | - |
|
635 | - } |
|
636 | - } |
|
637 | - return $crumbs; |
|
611 | + $show_on_front = get_option( 'show_on_front' ); |
|
612 | + |
|
613 | + if ( 'page' === $show_on_front && ( is_category() || is_tag() ) ) { |
|
614 | + |
|
615 | + $blog_page = get_option( 'page_for_posts' ); |
|
616 | + if ( false !== $blog_page && '' !== $blog_page ) { |
|
617 | + |
|
618 | + $new_crumbs = array(); |
|
619 | + $new_crumbs[0] = $crumbs[0]; |
|
620 | + |
|
621 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
622 | + $new_crumbs[1] = array( |
|
623 | + 0 => get_the_title( $blog_page ), |
|
624 | + 1 => get_permalink( $blog_page ), |
|
625 | + ); |
|
626 | + } else { |
|
627 | + $new_crumbs[1] = array( |
|
628 | + 'text' => get_the_title( $blog_page ), |
|
629 | + 'url' => get_permalink( $blog_page ), |
|
630 | + ); |
|
631 | + } |
|
632 | + $new_crumbs[2] = $crumbs[1]; |
|
633 | + $crumbs = $new_crumbs; |
|
634 | + |
|
635 | + } |
|
636 | + } |
|
637 | + return $crumbs; |
|
638 | 638 | } |
639 | 639 | add_filter( 'wpseo_breadcrumb_links', 'lsx_breadcrumbs_blog_link', 30, 1 ); |
640 | 640 | add_filter( 'woocommerce_get_breadcrumb', 'lsx_breadcrumbs_blog_link', 30, 1 ); |
@@ -646,28 +646,28 @@ discard block |
||
646 | 646 | */ |
647 | 647 | function lsx_cover_template_custom_enqueue() { |
648 | 648 | |
649 | - if ( ! is_page_template( 'page-templates/template-cover.php' ) ) { |
|
650 | - return; |
|
651 | - } |
|
652 | - $color_overlay_classes = ''; |
|
649 | + if ( ! is_page_template( 'page-templates/template-cover.php' ) ) { |
|
650 | + return; |
|
651 | + } |
|
652 | + $color_overlay_classes = ''; |
|
653 | 653 | |
654 | - $cover_text_color = get_theme_mod( 'lsx_cover_template_overlay_text_color' ); |
|
655 | - $cover_menu_color = get_theme_mod( 'lsx_cover_template_menu_text_color' ); |
|
656 | - $cover_hover_color = get_theme_mod( 'lsx_cover_template_text_hover_color' ); |
|
654 | + $cover_text_color = get_theme_mod( 'lsx_cover_template_overlay_text_color' ); |
|
655 | + $cover_menu_color = get_theme_mod( 'lsx_cover_template_menu_text_color' ); |
|
656 | + $cover_hover_color = get_theme_mod( 'lsx_cover_template_text_hover_color' ); |
|
657 | 657 | |
658 | - $cover_bg_color = get_theme_mod( 'lsx_cover_template_cover_background_color' ); |
|
659 | - $cover_bg_overlay_color = get_theme_mod( 'lsx_cover_template_overlay_background_color' ); |
|
658 | + $cover_bg_color = get_theme_mod( 'lsx_cover_template_cover_background_color' ); |
|
659 | + $cover_bg_overlay_color = get_theme_mod( 'lsx_cover_template_overlay_background_color' ); |
|
660 | 660 | |
661 | - $color_overlay_opacity = get_theme_mod( 'lsx_cover_template_overlay_opacity' ); |
|
662 | - $color_overlay_opacity = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity; |
|
663 | - $color_overlay_opacity = $color_overlay_opacity / 100; |
|
661 | + $color_overlay_opacity = get_theme_mod( 'lsx_cover_template_overlay_opacity' ); |
|
662 | + $color_overlay_opacity = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity; |
|
663 | + $color_overlay_opacity = $color_overlay_opacity / 100; |
|
664 | 664 | |
665 | - $color_overlay_opacity_header = $color_overlay_opacity - 0.3; |
|
665 | + $color_overlay_opacity_header = $color_overlay_opacity - 0.3; |
|
666 | 666 | |
667 | - $color_overlay_classes .= $color_overlay_opacity; |
|
667 | + $color_overlay_classes .= $color_overlay_opacity; |
|
668 | 668 | |
669 | - $custom_css = ".page-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container, .post-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container { background: {$cover_bg_color};color: transparent; } .page-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container:before, .post-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container:before { background: currentColor; content: ''; opacity: {$color_overlay_opacity_header}; position: absolute; bottom: 0; left: 0; right: 0; top: 0; display: block; } .page-template-template-cover .entry-header .entry-title, .post-template-template-cover .entry-header .entry-title, .post-template-template-cover #primary #main .entry-categories-inner a, .page-template-template-cover #primary #main .entry-header *, .post-template-template-cover #primary #main .entry-header * {color: {$cover_text_color};} .page-template-template-cover .entry-header .entry-title, .post-template-template-cover .entry-header .entry-title, .page-template-template-cover #primary #main .entry-header a:hover, .post-template-template-cover #primary #main .entry-header a:hover {color: {$cover_hover_color};} .page-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay, .page-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay::before, .post-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay, .post-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay::before {opacity: {$color_overlay_opacity};} .page-template-template-cover.mobile-header-hamburger #masthead .wrapper-toggle .navbar-toggle:hover .icon-bar, .post-template-template-cover.mobile-header-hamburger #masthead .wrapper-toggle .navbar-toggle:hover .icon-bar {background-color: {$cover_hover_color};} @media (min-width: 1200px) {.page-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item > a, .page-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item.active > a, .post-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item > a, .post-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item.active > a { color: {$cover_menu_color};} }"; |
|
670 | - wp_add_inline_style( 'lsx_main', $custom_css ); |
|
669 | + $custom_css = ".page-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container, .post-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container { background: {$cover_bg_color};color: transparent; } .page-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container:before, .post-template-template-cover.mobile-header-hamburger #masthead.masthead-open >.container:before { background: currentColor; content: ''; opacity: {$color_overlay_opacity_header}; position: absolute; bottom: 0; left: 0; right: 0; top: 0; display: block; } .page-template-template-cover .entry-header .entry-title, .post-template-template-cover .entry-header .entry-title, .post-template-template-cover #primary #main .entry-categories-inner a, .page-template-template-cover #primary #main .entry-header *, .post-template-template-cover #primary #main .entry-header * {color: {$cover_text_color};} .page-template-template-cover .entry-header .entry-title, .post-template-template-cover .entry-header .entry-title, .page-template-template-cover #primary #main .entry-header a:hover, .post-template-template-cover #primary #main .entry-header a:hover {color: {$cover_hover_color};} .page-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay, .page-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay::before, .post-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay, .post-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay::before {opacity: {$color_overlay_opacity};} .page-template-template-cover.mobile-header-hamburger #masthead .wrapper-toggle .navbar-toggle:hover .icon-bar, .post-template-template-cover.mobile-header-hamburger #masthead .wrapper-toggle .navbar-toggle:hover .icon-bar {background-color: {$cover_hover_color};} @media (min-width: 1200px) {.page-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item > a, .page-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item.active > a, .post-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item > a, .post-template-template-cover .header-wrap #masthead .primary-navbar > .nav > .menu-item.active > a { color: {$cover_menu_color};} }"; |
|
670 | + wp_add_inline_style( 'lsx_main', $custom_css ); |
|
671 | 671 | |
672 | 672 | } |
673 | 673 | add_action( 'wp_enqueue_scripts', 'lsx_cover_template_custom_enqueue' ); |
@@ -678,8 +678,8 @@ discard block |
||
678 | 678 | * @return bool True if it's a REST API request, false otherwise. |
679 | 679 | */ |
680 | 680 | function lsx_is_rest_api_request() { |
681 | - $rest_helper = LSX_Rest_Helper::get_instance(); |
|
682 | - return $rest_helper->is_rest_api_request(); |
|
681 | + $rest_helper = LSX_Rest_Helper::get_instance(); |
|
682 | + return $rest_helper->is_rest_api_request(); |
|
683 | 683 | } |
684 | 684 | |
685 | 685 | /** |
@@ -689,8 +689,8 @@ discard block |
||
689 | 689 | * @return void |
690 | 690 | */ |
691 | 691 | function lsx_custom_logo_attributes( $attributes ) { |
692 | - $attributes['loading'] = 'eager'; |
|
693 | - return $attributes; |
|
692 | + $attributes['loading'] = 'eager'; |
|
693 | + return $attributes; |
|
694 | 694 | } |
695 | 695 | add_filter( 'get_custom_logo_image_attributes', 'lsx_custom_logo_attributes' ); |
696 | 696 | |
@@ -700,9 +700,9 @@ discard block |
||
700 | 700 | * @return void |
701 | 701 | */ |
702 | 702 | function lsx_blockusers_init() { |
703 | - if ( is_admin() && ( current_user_can( 'teacher' ) || current_user_can( 'customer' ) ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { |
|
704 | - wp_safe_redirect( home_url() ); |
|
705 | - exit; |
|
706 | - } |
|
703 | + if ( is_admin() && ( current_user_can( 'teacher' ) || current_user_can( 'customer' ) ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { |
|
704 | + wp_safe_redirect( home_url() ); |
|
705 | + exit; |
|
706 | + } |
|
707 | 707 | } |
708 | 708 | add_action( 'init', 'lsx_blockusers_init' ); |
@@ -7,422 +7,422 @@ discard block |
||
7 | 7 | */ |
8 | 8 | |
9 | 9 | if ( ! defined( 'ABSPATH' ) ) { |
10 | - exit; |
|
10 | + exit; |
|
11 | 11 | } |
12 | 12 | |
13 | 13 | if ( ! function_exists( 'lsx_wc_support' ) ) : |
14 | 14 | |
15 | - /** |
|
16 | - * WooCommerce support. |
|
17 | - * |
|
18 | - * @package lsx |
|
19 | - * @subpackage woocommerce |
|
20 | - */ |
|
21 | - function lsx_wc_support() { |
|
22 | - add_theme_support( 'woocommerce' ); |
|
23 | - add_theme_support( 'wc-product-gallery-zoom' ); |
|
24 | - add_theme_support( 'wc-product-gallery-lightbox' ); |
|
25 | - add_theme_support( 'wc-product-gallery-slider' ); |
|
26 | - } |
|
27 | - |
|
28 | - add_action( 'after_setup_theme', 'lsx_wc_support' ); |
|
15 | + /** |
|
16 | + * WooCommerce support. |
|
17 | + * |
|
18 | + * @package lsx |
|
19 | + * @subpackage woocommerce |
|
20 | + */ |
|
21 | + function lsx_wc_support() { |
|
22 | + add_theme_support( 'woocommerce' ); |
|
23 | + add_theme_support( 'wc-product-gallery-zoom' ); |
|
24 | + add_theme_support( 'wc-product-gallery-lightbox' ); |
|
25 | + add_theme_support( 'wc-product-gallery-slider' ); |
|
26 | + } |
|
27 | + |
|
28 | + add_action( 'after_setup_theme', 'lsx_wc_support' ); |
|
29 | 29 | |
30 | 30 | endif; |
31 | 31 | |
32 | 32 | if ( ! function_exists( 'lsx_wc_scripts_add_styles' ) ) : |
33 | 33 | |
34 | - /** |
|
35 | - * WooCommerce enqueue styles. |
|
36 | - * |
|
37 | - * @package lsx |
|
38 | - * @subpackage woocommerce |
|
39 | - */ |
|
40 | - function lsx_wc_scripts_add_styles() { |
|
41 | - wp_enqueue_style( 'woocommerce-lsx', get_template_directory_uri() . '/assets/css/woocommerce/woocommerce.css', array( 'lsx_main' ), LSX_VERSION ); |
|
42 | - wp_style_add_data( 'woocommerce-lsx', 'rtl', 'replace' ); |
|
43 | - |
|
44 | - // Remove WC Shipping Multiple Addresses specific script causing issues on checkout. |
|
45 | - wp_dequeue_script( 'wcms-country-select' ); |
|
46 | - } |
|
34 | + /** |
|
35 | + * WooCommerce enqueue styles. |
|
36 | + * |
|
37 | + * @package lsx |
|
38 | + * @subpackage woocommerce |
|
39 | + */ |
|
40 | + function lsx_wc_scripts_add_styles() { |
|
41 | + wp_enqueue_style( 'woocommerce-lsx', get_template_directory_uri() . '/assets/css/woocommerce/woocommerce.css', array( 'lsx_main' ), LSX_VERSION ); |
|
42 | + wp_style_add_data( 'woocommerce-lsx', 'rtl', 'replace' ); |
|
47 | 43 | |
48 | - add_action( 'wp_enqueue_scripts', 'lsx_wc_scripts_add_styles' ); |
|
44 | + // Remove WC Shipping Multiple Addresses specific script causing issues on checkout. |
|
45 | + wp_dequeue_script( 'wcms-country-select' ); |
|
46 | + } |
|
47 | + |
|
48 | + add_action( 'wp_enqueue_scripts', 'lsx_wc_scripts_add_styles' ); |
|
49 | 49 | |
50 | 50 | endif; |
51 | 51 | |
52 | 52 | if ( ! function_exists( 'lsx_wc_checkout_cart_title' ) ) : |
53 | 53 | |
54 | - /** |
|
55 | - * Add title to Woocommerce Cart page anc Checkout page. |
|
56 | - * |
|
57 | - * @package lsx |
|
58 | - * @subpackage woocommerce |
|
59 | - */ |
|
60 | - function lsx_wc_checkout_cart_title() { |
|
61 | - $default_size = 'sm'; |
|
62 | - $size = apply_filters( 'lsx_bootstrap_column_size', $default_size ); |
|
63 | - if ( function_exists( 'is_woocommerce' ) && ( is_checkout() || is_cart() ) ) { |
|
64 | - ?> |
|
54 | + /** |
|
55 | + * Add title to Woocommerce Cart page anc Checkout page. |
|
56 | + * |
|
57 | + * @package lsx |
|
58 | + * @subpackage woocommerce |
|
59 | + */ |
|
60 | + function lsx_wc_checkout_cart_title() { |
|
61 | + $default_size = 'sm'; |
|
62 | + $size = apply_filters( 'lsx_bootstrap_column_size', $default_size ); |
|
63 | + if ( function_exists( 'is_woocommerce' ) && ( is_checkout() || is_cart() ) ) { |
|
64 | + ?> |
|
65 | 65 | <div class="checkout-header-wrapper cart-checkout-page col-<?php echo esc_attr( $size ); ?>-12"> |
66 | 66 | <h1 class="archive-title"><?php the_title(); ?></h1> |
67 | 67 | </div> |
68 | 68 | <?php |
69 | - } |
|
70 | - } |
|
69 | + } |
|
70 | + } |
|
71 | 71 | |
72 | - add_action( 'lsx_entry_inside_top', 'lsx_wc_checkout_cart_title' ); |
|
72 | + add_action( 'lsx_entry_inside_top', 'lsx_wc_checkout_cart_title' ); |
|
73 | 73 | |
74 | 74 | endif; |
75 | 75 | |
76 | 76 | if ( ! function_exists( 'lsx_simple_checkout' ) ) : |
77 | 77 | |
78 | - /** |
|
79 | - * Remove footer widgets to make Checkout and Cart simpler. |
|
80 | - * |
|
81 | - * @package lsx |
|
82 | - * @subpackage config |
|
83 | - */ |
|
84 | - function lsx_simple_checkout() { |
|
85 | - |
|
86 | - if ( class_exists( 'WooCommerce' ) ) { |
|
87 | - if ( is_checkout() || is_cart() ) { |
|
88 | - remove_action( 'lsx_footer_before', 'lsx_add_footer_sidebar_area' ); |
|
89 | - } |
|
90 | - } |
|
91 | - } |
|
78 | + /** |
|
79 | + * Remove footer widgets to make Checkout and Cart simpler. |
|
80 | + * |
|
81 | + * @package lsx |
|
82 | + * @subpackage config |
|
83 | + */ |
|
84 | + function lsx_simple_checkout() { |
|
85 | + |
|
86 | + if ( class_exists( 'WooCommerce' ) ) { |
|
87 | + if ( is_checkout() || is_cart() ) { |
|
88 | + remove_action( 'lsx_footer_before', 'lsx_add_footer_sidebar_area' ); |
|
89 | + } |
|
90 | + } |
|
91 | + } |
|
92 | 92 | |
93 | - add_action( 'wp_head', 'lsx_simple_checkout' ); |
|
93 | + add_action( 'wp_head', 'lsx_simple_checkout' ); |
|
94 | 94 | |
95 | 95 | endif; |
96 | 96 | |
97 | 97 | if ( ! function_exists( 'lsx_wc_form_field_args' ) ) : |
98 | 98 | |
99 | - /** |
|
100 | - * WooCommerce form fields. |
|
101 | - * |
|
102 | - * @package lsx |
|
103 | - * @subpackage woocommerce |
|
104 | - */ |
|
105 | - function lsx_wc_form_field_args( $args, $key, $value ) { |
|
106 | - $args['input_class'][] = 'form-control'; |
|
99 | + /** |
|
100 | + * WooCommerce form fields. |
|
101 | + * |
|
102 | + * @package lsx |
|
103 | + * @subpackage woocommerce |
|
104 | + */ |
|
105 | + function lsx_wc_form_field_args( $args, $key, $value ) { |
|
106 | + $args['input_class'][] = 'form-control'; |
|
107 | 107 | |
108 | - return $args; |
|
109 | - } |
|
108 | + return $args; |
|
109 | + } |
|
110 | 110 | |
111 | - add_action( 'woocommerce_form_field_args', 'lsx_wc_form_field_args', 10, 3 ); |
|
111 | + add_action( 'woocommerce_form_field_args', 'lsx_wc_form_field_args', 10, 3 ); |
|
112 | 112 | |
113 | 113 | endif; |
114 | 114 | |
115 | 115 | if ( ! function_exists( 'lsx_wc_theme_wrapper_start' ) ) : |
116 | 116 | |
117 | - /** |
|
118 | - * WooCommerce wrapper start. |
|
119 | - * |
|
120 | - * @package lsx |
|
121 | - * @subpackage woocommerce |
|
122 | - */ |
|
123 | - function lsx_wc_theme_wrapper_start() { |
|
124 | - lsx_content_wrap_before(); |
|
125 | - echo '<div id="primary" class="content-area ' . esc_attr( lsx_main_class() ) . '">'; |
|
126 | - lsx_content_before(); |
|
127 | - echo '<main id="main" class="site-main" role="main">'; |
|
128 | - lsx_content_top(); |
|
129 | - } |
|
130 | - |
|
131 | - remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10 ); |
|
132 | - add_action( 'woocommerce_before_main_content', 'lsx_wc_theme_wrapper_start' ); |
|
117 | + /** |
|
118 | + * WooCommerce wrapper start. |
|
119 | + * |
|
120 | + * @package lsx |
|
121 | + * @subpackage woocommerce |
|
122 | + */ |
|
123 | + function lsx_wc_theme_wrapper_start() { |
|
124 | + lsx_content_wrap_before(); |
|
125 | + echo '<div id="primary" class="content-area ' . esc_attr( lsx_main_class() ) . '">'; |
|
126 | + lsx_content_before(); |
|
127 | + echo '<main id="main" class="site-main" role="main">'; |
|
128 | + lsx_content_top(); |
|
129 | + } |
|
130 | + |
|
131 | + remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10 ); |
|
132 | + add_action( 'woocommerce_before_main_content', 'lsx_wc_theme_wrapper_start' ); |
|
133 | 133 | |
134 | 134 | endif; |
135 | 135 | |
136 | 136 | if ( ! function_exists( 'lsx_wc_theme_wrapper_end' ) ) : |
137 | 137 | |
138 | - /** |
|
139 | - * WooCommerce wrapper end. |
|
140 | - * |
|
141 | - * @package lsx |
|
142 | - * @subpackage woocommerce |
|
143 | - */ |
|
144 | - function lsx_wc_theme_wrapper_end() { |
|
145 | - lsx_content_bottom(); |
|
146 | - echo '</main>'; |
|
147 | - lsx_content_after(); |
|
148 | - echo '</div>'; |
|
149 | - lsx_content_wrap_after(); |
|
150 | - } |
|
151 | - |
|
152 | - remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10 ); |
|
153 | - add_action( 'woocommerce_after_main_content', 'lsx_wc_theme_wrapper_end' ); |
|
138 | + /** |
|
139 | + * WooCommerce wrapper end. |
|
140 | + * |
|
141 | + * @package lsx |
|
142 | + * @subpackage woocommerce |
|
143 | + */ |
|
144 | + function lsx_wc_theme_wrapper_end() { |
|
145 | + lsx_content_bottom(); |
|
146 | + echo '</main>'; |
|
147 | + lsx_content_after(); |
|
148 | + echo '</div>'; |
|
149 | + lsx_content_wrap_after(); |
|
150 | + } |
|
151 | + |
|
152 | + remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10 ); |
|
153 | + add_action( 'woocommerce_after_main_content', 'lsx_wc_theme_wrapper_end' ); |
|
154 | 154 | |
155 | 155 | endif; |
156 | 156 | |
157 | 157 | if ( ! function_exists( 'lsx_wc_disable_lsx_banner_plugin' ) ) : |
158 | 158 | |
159 | - /** |
|
160 | - * Disable LSX Banners plugin in some WC pages. |
|
161 | - * |
|
162 | - * @package lsx |
|
163 | - * @subpackage woocommerce |
|
164 | - */ |
|
165 | - function lsx_wc_disable_lsx_banner_plugin( $disabled ) { |
|
166 | - global $post; |
|
159 | + /** |
|
160 | + * Disable LSX Banners plugin in some WC pages. |
|
161 | + * |
|
162 | + * @package lsx |
|
163 | + * @subpackage woocommerce |
|
164 | + */ |
|
165 | + function lsx_wc_disable_lsx_banner_plugin( $disabled ) { |
|
166 | + global $post; |
|
167 | 167 | |
168 | - if ( $post && class_exists( 'WC_Wishlists_Pages' ) && WC_Wishlists_Pages::is_wishlist_page( $post->post_name ) ) { |
|
169 | - $disabled = true; |
|
170 | - } |
|
168 | + if ( $post && class_exists( 'WC_Wishlists_Pages' ) && WC_Wishlists_Pages::is_wishlist_page( $post->post_name ) ) { |
|
169 | + $disabled = true; |
|
170 | + } |
|
171 | 171 | |
172 | - return $disabled; |
|
173 | - } |
|
172 | + return $disabled; |
|
173 | + } |
|
174 | 174 | |
175 | - add_filter( 'lsx_banner_plugin_disable', 'lsx_wc_disable_lsx_banner_plugin' ); |
|
175 | + add_filter( 'lsx_banner_plugin_disable', 'lsx_wc_disable_lsx_banner_plugin' ); |
|
176 | 176 | |
177 | 177 | endif; |
178 | 178 | |
179 | 179 | if ( ! function_exists( 'lsx_wc_disable_lsx_banner' ) ) : |
180 | 180 | |
181 | - /** |
|
182 | - * Disable LSX Banners banner in some WC pages. |
|
183 | - * |
|
184 | - * @package lsx |
|
185 | - * @subpackage woocommerce |
|
186 | - */ |
|
187 | - function lsx_wc_disable_lsx_banner( $disabled ) { |
|
188 | - if ( is_shop() || is_product_category() || is_product_tag() || is_product() ) { |
|
189 | - $disabled = true; |
|
190 | - } |
|
191 | - |
|
192 | - return $disabled; |
|
193 | - } |
|
181 | + /** |
|
182 | + * Disable LSX Banners banner in some WC pages. |
|
183 | + * |
|
184 | + * @package lsx |
|
185 | + * @subpackage woocommerce |
|
186 | + */ |
|
187 | + function lsx_wc_disable_lsx_banner( $disabled ) { |
|
188 | + if ( is_shop() || is_product_category() || is_product_tag() || is_product() ) { |
|
189 | + $disabled = true; |
|
190 | + } |
|
191 | + |
|
192 | + return $disabled; |
|
193 | + } |
|
194 | 194 | |
195 | - add_filter( 'lsx_banner_disable', 'lsx_wc_disable_lsx_banner' ); |
|
195 | + add_filter( 'lsx_banner_disable', 'lsx_wc_disable_lsx_banner' ); |
|
196 | 196 | |
197 | 197 | endif; |
198 | 198 | |
199 | 199 | if ( ! function_exists( 'lsx_wc_categories_breadcrumb_filter' ) ) : |
200 | - /** |
|
201 | - * Improves the category and taxonomy breadcrumbs for woocommerce. |
|
202 | - * |
|
203 | - * @package lsx |
|
204 | - * @subpackage woocommerce |
|
205 | - */ |
|
206 | - function lsx_wc_categories_breadcrumb_filter( $crumbs ) { |
|
207 | - |
|
208 | - $shop_page_url = get_permalink( wc_get_page_id( 'shop' ) ); |
|
209 | - |
|
210 | - if ( is_product_category() || is_product_tag() ) { |
|
211 | - $new_crumbs = array(); |
|
212 | - $new_crumbs[0] = $crumbs[0]; |
|
213 | - |
|
214 | - if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
215 | - $new_crumbs[1] = array( |
|
216 | - 0 => __( 'Shop', 'lsx' ), |
|
217 | - 1 => $shop_page_url, |
|
218 | - ); |
|
219 | - } else { |
|
220 | - $new_crumbs[1] = array( |
|
221 | - 'text' => __( 'Shop', 'lsx' ), |
|
222 | - 'url' => $shop_page_url, |
|
223 | - ); |
|
224 | - } |
|
225 | - |
|
226 | - $new_crumbs[2] = $crumbs[1]; |
|
227 | - |
|
228 | - $crumbs = $new_crumbs; |
|
229 | - } |
|
230 | - return $crumbs; |
|
231 | - } |
|
232 | - add_filter( 'wpseo_breadcrumb_links', 'lsx_wc_categories_breadcrumb_filter', 30, 1 ); |
|
233 | - add_filter( 'woocommerce_get_breadcrumb', 'lsx_wc_categories_breadcrumb_filter', 30, 1 ); |
|
200 | + /** |
|
201 | + * Improves the category and taxonomy breadcrumbs for woocommerce. |
|
202 | + * |
|
203 | + * @package lsx |
|
204 | + * @subpackage woocommerce |
|
205 | + */ |
|
206 | + function lsx_wc_categories_breadcrumb_filter( $crumbs ) { |
|
207 | + |
|
208 | + $shop_page_url = get_permalink( wc_get_page_id( 'shop' ) ); |
|
209 | + |
|
210 | + if ( is_product_category() || is_product_tag() ) { |
|
211 | + $new_crumbs = array(); |
|
212 | + $new_crumbs[0] = $crumbs[0]; |
|
213 | + |
|
214 | + if ( function_exists( 'woocommerce_breadcrumb' ) ) { |
|
215 | + $new_crumbs[1] = array( |
|
216 | + 0 => __( 'Shop', 'lsx' ), |
|
217 | + 1 => $shop_page_url, |
|
218 | + ); |
|
219 | + } else { |
|
220 | + $new_crumbs[1] = array( |
|
221 | + 'text' => __( 'Shop', 'lsx' ), |
|
222 | + 'url' => $shop_page_url, |
|
223 | + ); |
|
224 | + } |
|
225 | + |
|
226 | + $new_crumbs[2] = $crumbs[1]; |
|
227 | + |
|
228 | + $crumbs = $new_crumbs; |
|
229 | + } |
|
230 | + return $crumbs; |
|
231 | + } |
|
232 | + add_filter( 'wpseo_breadcrumb_links', 'lsx_wc_categories_breadcrumb_filter', 30, 1 ); |
|
233 | + add_filter( 'woocommerce_get_breadcrumb', 'lsx_wc_categories_breadcrumb_filter', 30, 1 ); |
|
234 | 234 | |
235 | 235 | endif; |
236 | 236 | |
237 | 237 | if ( ! function_exists( 'lsx_wc_add_cart' ) ) : |
238 | 238 | |
239 | - /** |
|
240 | - * Adds WC cart to the header. |
|
241 | - * |
|
242 | - * @package lsx |
|
243 | - * @subpackage template-tags |
|
244 | - */ |
|
245 | - function lsx_wc_add_cart( $items, $args ) { |
|
246 | - $cart_menu_item_position = apply_filters( 'lsx_wc_cart_menu_item_position', 'primary' ); |
|
247 | - |
|
248 | - $cart_logged_out_position = $cart_menu_item_position . '_logged_out'; |
|
249 | - |
|
250 | - if ( $cart_menu_item_position === $args->theme_location || $cart_logged_out_position === $args->theme_location ) { |
|
251 | - $customizer_option = get_theme_mod( 'lsx_header_wc_cart', false ); |
|
252 | - |
|
253 | - if ( ! empty( $customizer_option ) ) { |
|
254 | - ob_start(); |
|
255 | - the_widget( 'WC_Widget_Cart', 'title=' ); |
|
256 | - $widget = ob_get_clean(); |
|
257 | - |
|
258 | - if ( is_cart() ) { |
|
259 | - $class = 'current-menu-item'; |
|
260 | - } else { |
|
261 | - $class = ''; |
|
262 | - } |
|
263 | - |
|
264 | - $item_class = 'menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children dropdown lsx-wc-cart-menu-item ' . $class; |
|
265 | - $item_class = apply_filters( 'lsx_wc_cart_menu_item_class', $item_class ); |
|
266 | - |
|
267 | - $item = '<li class="' . $item_class . '">' . |
|
268 | - '<a title="' . esc_attr__( 'View your shopping cart', 'lsx' ) . '" href="' . esc_url( wc_get_cart_url() ) . '" data-toggle="dropdown" class="dropdown-toggle" aria-haspopup="true">' . |
|
269 | - '<span class="lsx-wc-cart-amount">' . wp_kses_data( WC()->cart->get_cart_subtotal() ) . '</span>' . |
|
270 | - /* Translators: %s: items quantity */ |
|
271 | - '<span class="lsx-wc-cart-count">' . wp_kses_data( sprintf( _n( '%d item', '%d items', WC()->cart->get_cart_contents_count(), 'lsx' ), WC()->cart->get_cart_contents_count() ) ) . '</span>' . |
|
272 | - ( ! empty( WC()->cart->get_cart_contents_count() ) ? '<span class="lsx-wc-cart-count-badge">' . wp_kses_data( WC()->cart->get_cart_contents_count() ) . '</span>' : '' ) . |
|
273 | - '</a>' . |
|
274 | - '<ul role="menu" class=" dropdown-menu lsx-wc-cart-sub-menu">' . |
|
275 | - '<li>' . |
|
276 | - '<div class="lsx-wc-cart-dropdown">' . $widget . '</div>' . |
|
277 | - '</li>' . |
|
278 | - '</ul>' . |
|
279 | - '</li>'; |
|
280 | - |
|
281 | - if ( 'top-menu' === $args->theme_location ) { |
|
282 | - $items = $item . $items; |
|
283 | - } else { |
|
284 | - $items = $items . $item; |
|
285 | - } |
|
286 | - } |
|
287 | - } |
|
288 | - |
|
289 | - return $items; |
|
290 | - } |
|
291 | - |
|
292 | - add_filter( 'wp_nav_menu_items', 'lsx_wc_add_cart', 10, 2 ); |
|
239 | + /** |
|
240 | + * Adds WC cart to the header. |
|
241 | + * |
|
242 | + * @package lsx |
|
243 | + * @subpackage template-tags |
|
244 | + */ |
|
245 | + function lsx_wc_add_cart( $items, $args ) { |
|
246 | + $cart_menu_item_position = apply_filters( 'lsx_wc_cart_menu_item_position', 'primary' ); |
|
247 | + |
|
248 | + $cart_logged_out_position = $cart_menu_item_position . '_logged_out'; |
|
249 | + |
|
250 | + if ( $cart_menu_item_position === $args->theme_location || $cart_logged_out_position === $args->theme_location ) { |
|
251 | + $customizer_option = get_theme_mod( 'lsx_header_wc_cart', false ); |
|
252 | + |
|
253 | + if ( ! empty( $customizer_option ) ) { |
|
254 | + ob_start(); |
|
255 | + the_widget( 'WC_Widget_Cart', 'title=' ); |
|
256 | + $widget = ob_get_clean(); |
|
257 | + |
|
258 | + if ( is_cart() ) { |
|
259 | + $class = 'current-menu-item'; |
|
260 | + } else { |
|
261 | + $class = ''; |
|
262 | + } |
|
263 | + |
|
264 | + $item_class = 'menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children dropdown lsx-wc-cart-menu-item ' . $class; |
|
265 | + $item_class = apply_filters( 'lsx_wc_cart_menu_item_class', $item_class ); |
|
266 | + |
|
267 | + $item = '<li class="' . $item_class . '">' . |
|
268 | + '<a title="' . esc_attr__( 'View your shopping cart', 'lsx' ) . '" href="' . esc_url( wc_get_cart_url() ) . '" data-toggle="dropdown" class="dropdown-toggle" aria-haspopup="true">' . |
|
269 | + '<span class="lsx-wc-cart-amount">' . wp_kses_data( WC()->cart->get_cart_subtotal() ) . '</span>' . |
|
270 | + /* Translators: %s: items quantity */ |
|
271 | + '<span class="lsx-wc-cart-count">' . wp_kses_data( sprintf( _n( '%d item', '%d items', WC()->cart->get_cart_contents_count(), 'lsx' ), WC()->cart->get_cart_contents_count() ) ) . '</span>' . |
|
272 | + ( ! empty( WC()->cart->get_cart_contents_count() ) ? '<span class="lsx-wc-cart-count-badge">' . wp_kses_data( WC()->cart->get_cart_contents_count() ) . '</span>' : '' ) . |
|
273 | + '</a>' . |
|
274 | + '<ul role="menu" class=" dropdown-menu lsx-wc-cart-sub-menu">' . |
|
275 | + '<li>' . |
|
276 | + '<div class="lsx-wc-cart-dropdown">' . $widget . '</div>' . |
|
277 | + '</li>' . |
|
278 | + '</ul>' . |
|
279 | + '</li>'; |
|
280 | + |
|
281 | + if ( 'top-menu' === $args->theme_location ) { |
|
282 | + $items = $item . $items; |
|
283 | + } else { |
|
284 | + $items = $items . $item; |
|
285 | + } |
|
286 | + } |
|
287 | + } |
|
288 | + |
|
289 | + return $items; |
|
290 | + } |
|
291 | + |
|
292 | + add_filter( 'wp_nav_menu_items', 'lsx_wc_add_cart', 10, 2 ); |
|
293 | 293 | |
294 | 294 | endif; |
295 | 295 | |
296 | 296 | if ( ! function_exists( 'lsx_wc_products_widget_wrapper_before' ) ) : |
297 | 297 | |
298 | - /** |
|
299 | - * Change WC products widget wrapper (before). |
|
300 | - * |
|
301 | - * @package lsx |
|
302 | - * @subpackage woocommerce |
|
303 | - */ |
|
304 | - function lsx_wc_products_widget_wrapper_before( $html ) { |
|
305 | - $html = '<div class="lsx-woocommerce-slider lsx-woocommerce-shortcode">'; |
|
306 | - return $html; |
|
307 | - } |
|
298 | + /** |
|
299 | + * Change WC products widget wrapper (before). |
|
300 | + * |
|
301 | + * @package lsx |
|
302 | + * @subpackage woocommerce |
|
303 | + */ |
|
304 | + function lsx_wc_products_widget_wrapper_before( $html ) { |
|
305 | + $html = '<div class="lsx-woocommerce-slider lsx-woocommerce-shortcode">'; |
|
306 | + return $html; |
|
307 | + } |
|
308 | 308 | |
309 | - add_filter( 'woocommerce_before_widget_product_list', 'lsx_wc_products_widget_wrapper_before', 15 ); |
|
309 | + add_filter( 'woocommerce_before_widget_product_list', 'lsx_wc_products_widget_wrapper_before', 15 ); |
|
310 | 310 | |
311 | 311 | endif; |
312 | 312 | |
313 | 313 | if ( ! function_exists( 'lsx_wc_products_widget_wrapper_after' ) ) : |
314 | 314 | |
315 | - /** |
|
316 | - * Change WC products widget wrapper (after). |
|
317 | - * |
|
318 | - * @package lsx |
|
319 | - * @subpackage woocommerce |
|
320 | - */ |
|
321 | - function lsx_wc_products_widget_wrapper_after( $html ) { |
|
322 | - $html = '</div>'; |
|
323 | - return $html; |
|
324 | - } |
|
315 | + /** |
|
316 | + * Change WC products widget wrapper (after). |
|
317 | + * |
|
318 | + * @package lsx |
|
319 | + * @subpackage woocommerce |
|
320 | + */ |
|
321 | + function lsx_wc_products_widget_wrapper_after( $html ) { |
|
322 | + $html = '</div>'; |
|
323 | + return $html; |
|
324 | + } |
|
325 | 325 | |
326 | - add_filter( 'woocommerce_after_widget_product_list', 'lsx_wc_products_widget_wrapper_after', 15 ); |
|
326 | + add_filter( 'woocommerce_after_widget_product_list', 'lsx_wc_products_widget_wrapper_after', 15 ); |
|
327 | 327 | |
328 | 328 | endif; |
329 | 329 | |
330 | 330 | if ( ! function_exists( 'lsx_wc_reviews_widget_override' ) ) : |
331 | 331 | |
332 | - /** |
|
333 | - * Override WC ewviews widget. |
|
334 | - * |
|
335 | - * @package lsx |
|
336 | - * @subpackage woocommerce |
|
337 | - */ |
|
338 | - function lsx_wc_reviews_widget_override() { |
|
339 | - if ( class_exists( 'WC_Widget_Recent_Reviews' ) ) { |
|
340 | - unregister_widget( 'WC_Widget_Recent_Reviews' ); |
|
341 | - require get_template_directory() . '/includes/classes/class-lsx-wc-widget-recent-reviews.php'; |
|
342 | - register_widget( 'LSX_WC_Widget_Recent_Reviews' ); |
|
343 | - } |
|
344 | - } |
|
345 | - |
|
346 | - add_action( 'widgets_init', 'lsx_wc_reviews_widget_override', 15 ); |
|
332 | + /** |
|
333 | + * Override WC ewviews widget. |
|
334 | + * |
|
335 | + * @package lsx |
|
336 | + * @subpackage woocommerce |
|
337 | + */ |
|
338 | + function lsx_wc_reviews_widget_override() { |
|
339 | + if ( class_exists( 'WC_Widget_Recent_Reviews' ) ) { |
|
340 | + unregister_widget( 'WC_Widget_Recent_Reviews' ); |
|
341 | + require get_template_directory() . '/includes/classes/class-lsx-wc-widget-recent-reviews.php'; |
|
342 | + register_widget( 'LSX_WC_Widget_Recent_Reviews' ); |
|
343 | + } |
|
344 | + } |
|
345 | + |
|
346 | + add_action( 'widgets_init', 'lsx_wc_reviews_widget_override', 15 ); |
|
347 | 347 | |
348 | 348 | endif; |
349 | 349 | |
350 | 350 | if ( ! function_exists( 'lsx_wc_change_price_html' ) ) : |
351 | 351 | |
352 | - /** |
|
353 | - * Change WC ZERO price to "free". |
|
354 | - * |
|
355 | - * @package lsx |
|
356 | - * @subpackage woocommerce |
|
357 | - * |
|
358 | - * @param $price string |
|
359 | - * @param $product WC_Product |
|
360 | - * @return string |
|
361 | - */ |
|
362 | - function lsx_wc_change_price_html( $price, $product ) { |
|
363 | - if ( empty( $product->get_price() ) && 'variable' !== $product->get_type() ) { |
|
364 | - if ( $product->is_on_sale() && $product->get_regular_price() ) { |
|
365 | - $regular_price = wc_get_price_to_display( |
|
366 | - $product, |
|
367 | - array( |
|
368 | - 'qty' => 1, |
|
369 | - 'price' => $product->get_regular_price(), |
|
370 | - ) |
|
371 | - ); |
|
372 | - |
|
373 | - $price = wc_format_price_range( $regular_price, esc_html__( 'Free!', 'lsx' ) ); |
|
374 | - } else { |
|
375 | - $price = '<span class="amount">' . esc_html__( 'Free!', 'lsx' ) . '</span>'; |
|
376 | - } |
|
377 | - } |
|
378 | - |
|
379 | - return $price; |
|
380 | - } |
|
381 | - |
|
382 | - add_filter( 'woocommerce_get_price_html', 'lsx_wc_change_price_html', 15, 2 ); |
|
352 | + /** |
|
353 | + * Change WC ZERO price to "free". |
|
354 | + * |
|
355 | + * @package lsx |
|
356 | + * @subpackage woocommerce |
|
357 | + * |
|
358 | + * @param $price string |
|
359 | + * @param $product WC_Product |
|
360 | + * @return string |
|
361 | + */ |
|
362 | + function lsx_wc_change_price_html( $price, $product ) { |
|
363 | + if ( empty( $product->get_price() ) && 'variable' !== $product->get_type() ) { |
|
364 | + if ( $product->is_on_sale() && $product->get_regular_price() ) { |
|
365 | + $regular_price = wc_get_price_to_display( |
|
366 | + $product, |
|
367 | + array( |
|
368 | + 'qty' => 1, |
|
369 | + 'price' => $product->get_regular_price(), |
|
370 | + ) |
|
371 | + ); |
|
372 | + |
|
373 | + $price = wc_format_price_range( $regular_price, esc_html__( 'Free!', 'lsx' ) ); |
|
374 | + } else { |
|
375 | + $price = '<span class="amount">' . esc_html__( 'Free!', 'lsx' ) . '</span>'; |
|
376 | + } |
|
377 | + } |
|
378 | + |
|
379 | + return $price; |
|
380 | + } |
|
381 | + |
|
382 | + add_filter( 'woocommerce_get_price_html', 'lsx_wc_change_price_html', 15, 2 ); |
|
383 | 383 | |
384 | 384 | endif; |
385 | 385 | |
386 | 386 | if ( ! function_exists( 'lsx_wc_cart_link_fragment' ) ) : |
387 | 387 | |
388 | - /** |
|
389 | - * Cart Fragments. |
|
390 | - * Ensure cart contents update when products are added to the cart via AJAX. |
|
391 | - * |
|
392 | - * @package lsx |
|
393 | - * @subpackage woocommerce |
|
394 | - */ |
|
395 | - function lsx_wc_cart_link_fragment( $fragments ) { |
|
396 | - global $woocommerce; |
|
397 | - |
|
398 | - ob_start(); |
|
399 | - lsx_wc_cart_link(); |
|
400 | - $fragments['li.lsx-wc-cart-menu-item > a'] = ob_get_clean(); |
|
401 | - |
|
402 | - ob_start(); |
|
403 | - lsx_wc_items_counter(); |
|
404 | - $items_counter = ob_get_clean(); |
|
405 | - |
|
406 | - if ( ! empty( $items_counter ) ) { |
|
407 | - $fragments['div.widget_shopping_cart_content'] = preg_replace( '/(.+)(<\/ul>)[\s\n]*(<p class="woocommerce-mini-cart__total)(.+)/', '$1' . $items_counter . '$2$3$4', $fragments['div.widget_shopping_cart_content'] ); |
|
408 | - } |
|
409 | - |
|
410 | - return $fragments; |
|
411 | - } |
|
388 | + /** |
|
389 | + * Cart Fragments. |
|
390 | + * Ensure cart contents update when products are added to the cart via AJAX. |
|
391 | + * |
|
392 | + * @package lsx |
|
393 | + * @subpackage woocommerce |
|
394 | + */ |
|
395 | + function lsx_wc_cart_link_fragment( $fragments ) { |
|
396 | + global $woocommerce; |
|
397 | + |
|
398 | + ob_start(); |
|
399 | + lsx_wc_cart_link(); |
|
400 | + $fragments['li.lsx-wc-cart-menu-item > a'] = ob_get_clean(); |
|
401 | + |
|
402 | + ob_start(); |
|
403 | + lsx_wc_items_counter(); |
|
404 | + $items_counter = ob_get_clean(); |
|
405 | + |
|
406 | + if ( ! empty( $items_counter ) ) { |
|
407 | + $fragments['div.widget_shopping_cart_content'] = preg_replace( '/(.+)(<\/ul>)[\s\n]*(<p class="woocommerce-mini-cart__total)(.+)/', '$1' . $items_counter . '$2$3$4', $fragments['div.widget_shopping_cart_content'] ); |
|
408 | + } |
|
409 | + |
|
410 | + return $fragments; |
|
411 | + } |
|
412 | 412 | |
413 | 413 | endif; |
414 | 414 | |
415 | 415 | if ( ! function_exists( 'lsx_wc_cart_link' ) ) : |
416 | 416 | |
417 | - /** |
|
418 | - * Cart Link. |
|
419 | - * Displayed a link to the cart including the number of items present and the cart total. |
|
420 | - * |
|
421 | - * @package lsx |
|
422 | - * @subpackage woocommerce |
|
423 | - */ |
|
424 | - function lsx_wc_cart_link() { |
|
425 | - ?> |
|
417 | + /** |
|
418 | + * Cart Link. |
|
419 | + * Displayed a link to the cart including the number of items present and the cart total. |
|
420 | + * |
|
421 | + * @package lsx |
|
422 | + * @subpackage woocommerce |
|
423 | + */ |
|
424 | + function lsx_wc_cart_link() { |
|
425 | + ?> |
|
426 | 426 | <a title="<?php esc_attr_e( 'View your shopping cart', 'lsx' ); ?>" href="<?php echo esc_url( wc_get_cart_url() ); ?>" data-toggle="dropdown" class="dropdown-toggle" aria-haspopup="true"> |
427 | 427 | <span class="lsx-wc-cart-amount"><?php echo wp_kses_data( WC()->cart->get_cart_subtotal() ); ?></span> |
428 | 428 | |
@@ -434,82 +434,82 @@ discard block |
||
434 | 434 | <?php endif; ?> |
435 | 435 | </a> |
436 | 436 | <?php |
437 | - } |
|
437 | + } |
|
438 | 438 | |
439 | 439 | endif; |
440 | 440 | |
441 | 441 | if ( ! function_exists( 'lsx_wc_items_counter' ) ) : |
442 | 442 | |
443 | - /** |
|
444 | - * Add car item hidden items counter. |
|
445 | - * |
|
446 | - * @package lsx |
|
447 | - * @subpackage woocommerce |
|
448 | - */ |
|
449 | - function lsx_wc_items_counter() { |
|
450 | - $count = (int) WC()->cart->get_cart_contents_count(); |
|
451 | - $items_counter = ''; |
|
452 | - |
|
453 | - if ( ! empty( $count ) ) { |
|
454 | - $count -= 3; |
|
455 | - |
|
456 | - if ( 1 === $count ) { |
|
457 | - $items_counter = esc_html__( '1 other item in cart', 'lsx' ); |
|
458 | - } elseif ( $count > 1 ) { |
|
459 | - /* Translators: %s: items counter */ |
|
460 | - $items_counter = sprintf( esc_html__( '%s other items in cart', 'lsx' ), $count ); |
|
461 | - } |
|
462 | - } |
|
463 | - $cart_url = function_exists( 'wc_get_cart_url' ) ? wc_get_cart_url() : WC()->cart->get_cart_url(); |
|
464 | - if ( ! empty( $items_counter ) ) : |
|
465 | - ?> |
|
443 | + /** |
|
444 | + * Add car item hidden items counter. |
|
445 | + * |
|
446 | + * @package lsx |
|
447 | + * @subpackage woocommerce |
|
448 | + */ |
|
449 | + function lsx_wc_items_counter() { |
|
450 | + $count = (int) WC()->cart->get_cart_contents_count(); |
|
451 | + $items_counter = ''; |
|
452 | + |
|
453 | + if ( ! empty( $count ) ) { |
|
454 | + $count -= 3; |
|
455 | + |
|
456 | + if ( 1 === $count ) { |
|
457 | + $items_counter = esc_html__( '1 other item in cart', 'lsx' ); |
|
458 | + } elseif ( $count > 1 ) { |
|
459 | + /* Translators: %s: items counter */ |
|
460 | + $items_counter = sprintf( esc_html__( '%s other items in cart', 'lsx' ), $count ); |
|
461 | + } |
|
462 | + } |
|
463 | + $cart_url = function_exists( 'wc_get_cart_url' ) ? wc_get_cart_url() : WC()->cart->get_cart_url(); |
|
464 | + if ( ! empty( $items_counter ) ) : |
|
465 | + ?> |
|
466 | 466 | <li class="woocommerce-mini-cart-item mini_cart_item" style="display: block;"> |
467 | 467 | <a href="<?php echo esc_url( $cart_url ); ?>"><?php echo esc_html( $items_counter ); ?></a> |
468 | 468 | </li> |
469 | 469 | <?php |
470 | - endif; |
|
471 | - } |
|
470 | + endif; |
|
471 | + } |
|
472 | 472 | |
473 | 473 | endif; |
474 | 474 | |
475 | 475 | if ( ! function_exists( 'lsx_wc_loop_shop_per_page' ) ) : |
476 | 476 | |
477 | - /** |
|
478 | - * Changes the number of products to display on shop. |
|
479 | - * |
|
480 | - * @package lsx |
|
481 | - * @subpackage woocommerce |
|
482 | - */ |
|
483 | - function lsx_wc_loop_shop_per_page( $items ) { |
|
484 | - $items = 12; |
|
485 | - return $items; |
|
486 | - } |
|
477 | + /** |
|
478 | + * Changes the number of products to display on shop. |
|
479 | + * |
|
480 | + * @package lsx |
|
481 | + * @subpackage woocommerce |
|
482 | + */ |
|
483 | + function lsx_wc_loop_shop_per_page( $items ) { |
|
484 | + $items = 12; |
|
485 | + return $items; |
|
486 | + } |
|
487 | 487 | |
488 | - add_filter( 'loop_shop_per_page', 'lsx_wc_loop_shop_per_page', 20 ); |
|
488 | + add_filter( 'loop_shop_per_page', 'lsx_wc_loop_shop_per_page', 20 ); |
|
489 | 489 | |
490 | 490 | endif; |
491 | 491 | |
492 | 492 | if ( ! function_exists( 'lsx_wc_add_to_cart_message_html' ) ) : |
493 | 493 | |
494 | - /** |
|
495 | - * Changes the "added to cart" message HTML. |
|
496 | - * |
|
497 | - * @package lsx |
|
498 | - * @subpackage woocommerce |
|
499 | - */ |
|
500 | - function lsx_wc_add_to_cart_message_html( $message, $products ) { |
|
501 | - $message = '<div class="woocommerce-message-added-to-cart">' . $message . '</div>'; |
|
502 | - return $message; |
|
503 | - } |
|
494 | + /** |
|
495 | + * Changes the "added to cart" message HTML. |
|
496 | + * |
|
497 | + * @package lsx |
|
498 | + * @subpackage woocommerce |
|
499 | + */ |
|
500 | + function lsx_wc_add_to_cart_message_html( $message, $products ) { |
|
501 | + $message = '<div class="woocommerce-message-added-to-cart">' . $message . '</div>'; |
|
502 | + return $message; |
|
503 | + } |
|
504 | 504 | |
505 | - add_filter( 'wc_add_to_cart_message_html', 'lsx_wc_add_to_cart_message_html', 20, 2 ); |
|
505 | + add_filter( 'wc_add_to_cart_message_html', 'lsx_wc_add_to_cart_message_html', 20, 2 ); |
|
506 | 506 | |
507 | 507 | endif; |
508 | 508 | |
509 | 509 | if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.3', '>=' ) ) { |
510 | - add_filter( 'woocommerce_add_to_cart_fragments', 'lsx_wc_cart_link_fragment' ); |
|
510 | + add_filter( 'woocommerce_add_to_cart_fragments', 'lsx_wc_cart_link_fragment' ); |
|
511 | 511 | } else { |
512 | - add_filter( 'add_to_cart_fragments', 'lsx_wc_cart_link_fragment' ); |
|
512 | + add_filter( 'add_to_cart_fragments', 'lsx_wc_cart_link_fragment' ); |
|
513 | 513 | } |
514 | 514 | |
515 | 515 | remove_action( 'woocommerce_after_shop_loop', 'woocommerce_pagination', 10 ); |
@@ -531,184 +531,184 @@ discard block |
||
531 | 531 | |
532 | 532 | if ( ! function_exists( 'lsx_wc_sorting_wrapper' ) ) : |
533 | 533 | |
534 | - /** |
|
535 | - * Sorting wrapper. |
|
536 | - * |
|
537 | - * @package lsx |
|
538 | - * @subpackage woocommerce |
|
539 | - */ |
|
540 | - function lsx_wc_sorting_wrapper() { |
|
541 | - echo '<div class="lsx-wc-sorting">'; |
|
542 | - } |
|
534 | + /** |
|
535 | + * Sorting wrapper. |
|
536 | + * |
|
537 | + * @package lsx |
|
538 | + * @subpackage woocommerce |
|
539 | + */ |
|
540 | + function lsx_wc_sorting_wrapper() { |
|
541 | + echo '<div class="lsx-wc-sorting">'; |
|
542 | + } |
|
543 | 543 | |
544 | 544 | endif; |
545 | 545 | |
546 | 546 | if ( ! function_exists( 'lsx_wc_sorting_wrapper_close' ) ) : |
547 | 547 | |
548 | - /** |
|
549 | - * Sorting wrapper close. |
|
550 | - * |
|
551 | - * @package lsx |
|
552 | - * @subpackage woocommerce |
|
553 | - */ |
|
554 | - function lsx_wc_sorting_wrapper_close() { |
|
555 | - echo '</div>'; |
|
556 | - } |
|
548 | + /** |
|
549 | + * Sorting wrapper close. |
|
550 | + * |
|
551 | + * @package lsx |
|
552 | + * @subpackage woocommerce |
|
553 | + */ |
|
554 | + function lsx_wc_sorting_wrapper_close() { |
|
555 | + echo '</div>'; |
|
556 | + } |
|
557 | 557 | |
558 | 558 | endif; |
559 | 559 | |
560 | 560 | if ( ! function_exists( 'lsx_wc_product_columns_wrapper_close' ) ) : |
561 | 561 | |
562 | - /** |
|
563 | - * Product columns wrapper close. |
|
564 | - * |
|
565 | - * @package lsx |
|
566 | - * @subpackage woocommerce |
|
567 | - */ |
|
568 | - function lsx_wc_product_columns_wrapper_close() { |
|
569 | - echo '</div>'; |
|
570 | - } |
|
562 | + /** |
|
563 | + * Product columns wrapper close. |
|
564 | + * |
|
565 | + * @package lsx |
|
566 | + * @subpackage woocommerce |
|
567 | + */ |
|
568 | + function lsx_wc_product_columns_wrapper_close() { |
|
569 | + echo '</div>'; |
|
570 | + } |
|
571 | 571 | |
572 | 572 | endif; |
573 | 573 | |
574 | 574 | if ( ! function_exists( 'lsx_wc_woocommerce_pagination' ) ) : |
575 | 575 | |
576 | - /** |
|
577 | - * LSX WooCommerce Pagination |
|
578 | - * WooCommerce disables the product pagination inside the woocommerce_product_subcategories() function |
|
579 | - * but since LSX adds pagination before that function is excuted we need a separate function to |
|
580 | - * determine whether or not to display the pagination. |
|
581 | - * |
|
582 | - * @package lsx |
|
583 | - * @subpackage woocommerce |
|
584 | - */ |
|
585 | - function lsx_wc_woocommerce_pagination() { |
|
586 | - if ( woocommerce_products_will_display() ) { |
|
587 | - woocommerce_pagination(); |
|
588 | - } |
|
589 | - } |
|
576 | + /** |
|
577 | + * LSX WooCommerce Pagination |
|
578 | + * WooCommerce disables the product pagination inside the woocommerce_product_subcategories() function |
|
579 | + * but since LSX adds pagination before that function is excuted we need a separate function to |
|
580 | + * determine whether or not to display the pagination. |
|
581 | + * |
|
582 | + * @package lsx |
|
583 | + * @subpackage woocommerce |
|
584 | + */ |
|
585 | + function lsx_wc_woocommerce_pagination() { |
|
586 | + if ( woocommerce_products_will_display() ) { |
|
587 | + woocommerce_pagination(); |
|
588 | + } |
|
589 | + } |
|
590 | 590 | |
591 | 591 | endif; |
592 | 592 | |
593 | 593 | if ( ! function_exists( 'lsx_customizer_wc_controls' ) ) : |
594 | 594 | |
595 | - /** |
|
596 | - * Returns an array of the core panel. |
|
597 | - * |
|
598 | - * @package lsx |
|
599 | - * @subpackage customizer |
|
600 | - * |
|
601 | - * @return $lsx_controls array() |
|
602 | - */ |
|
603 | - function lsx_customizer_wc_controls( $lsx_controls ) { |
|
604 | - $lsx_controls['panels']['woocommerce'] = array( |
|
605 | - 'title' => esc_html__( 'WooCommerce', 'lsx' ), |
|
606 | - 'description' => esc_html__( 'Change the WooCommerce settings.', 'lsx' ), |
|
607 | - 'priority' => 23, |
|
608 | - ); |
|
609 | - |
|
610 | - /** |
|
611 | - * Global. |
|
612 | - */ |
|
613 | - |
|
614 | - $lsx_controls['sections']['lsx-wc-global'] = array( |
|
615 | - 'title' => esc_html__( 'LSX Global', 'lsx' ), |
|
616 | - 'description' => esc_html__( 'Change the WooCommerce global settings.', 'lsx' ), |
|
617 | - 'panel' => 'woocommerce', |
|
618 | - 'priority' => 1, |
|
619 | - ); |
|
620 | - |
|
621 | - $lsx_controls['settings']['lsx_wc_trust_footer_bar_status'] = array( |
|
622 | - 'default' => '1', |
|
623 | - 'sanitize_callback' => 'lsx_sanitize_checkbox', |
|
624 | - ); |
|
625 | - |
|
626 | - $lsx_controls['fields']['lsx_wc_trust_footer_bar_status'] = array( |
|
627 | - 'label' => esc_html__( 'Footer Trust Factors Section', 'lsx' ), |
|
628 | - 'description' => esc_html__( 'Enable the footer trust factors section.', 'lsx' ), |
|
629 | - 'section' => 'lsx-wc-global', |
|
630 | - 'type' => 'checkbox', |
|
631 | - 'priority' => 1, |
|
632 | - ); |
|
633 | - |
|
634 | - $lsx_controls['settings']['lsx_wc_mobile_footer_bar_status'] = array( |
|
635 | - 'default' => '1', |
|
636 | - 'sanitize_callback' => 'lsx_sanitize_checkbox', |
|
637 | - ); |
|
638 | - |
|
639 | - $lsx_controls['fields']['lsx_wc_mobile_footer_bar_status'] = array( |
|
640 | - 'label' => esc_html__( 'Footer Bar', 'lsx' ), |
|
641 | - 'description' => esc_html__( 'Enable the mobile footer bar.', 'lsx' ), |
|
642 | - 'section' => 'lsx-wc-global', |
|
643 | - 'type' => 'checkbox', |
|
644 | - 'priority' => 1, |
|
645 | - ); |
|
646 | - |
|
647 | - /** |
|
648 | - * Cart. |
|
649 | - */ |
|
650 | - |
|
651 | - $lsx_controls['sections']['lsx-wc-cart'] = array( |
|
652 | - 'title' => esc_html__( 'LSX Cart', 'lsx' ), |
|
653 | - 'description' => esc_html__( 'Change the WooCommerce cart settings.', 'lsx' ), |
|
654 | - 'panel' => 'woocommerce', |
|
655 | - 'priority' => 2, |
|
656 | - ); |
|
657 | - |
|
658 | - $lsx_controls['settings']['lsx_header_wc_cart'] = array( |
|
659 | - 'default' => false, |
|
660 | - 'sanitize_callback' => 'lsx_sanitize_checkbox', |
|
661 | - ); |
|
662 | - |
|
663 | - $lsx_controls['fields']['lsx_header_wc_cart'] = array( |
|
664 | - 'label' => esc_html__( 'Menu Item', 'lsx' ), |
|
665 | - 'description' => esc_html__( 'Enable the cart menu item.', 'lsx' ), |
|
666 | - 'section' => 'lsx-wc-cart', |
|
667 | - 'type' => 'checkbox', |
|
668 | - 'priority' => 1, |
|
669 | - ); |
|
670 | - |
|
671 | - return $lsx_controls; |
|
672 | - } |
|
673 | - |
|
674 | - add_filter( 'lsx_customizer_controls', 'lsx_customizer_wc_controls' ); |
|
595 | + /** |
|
596 | + * Returns an array of the core panel. |
|
597 | + * |
|
598 | + * @package lsx |
|
599 | + * @subpackage customizer |
|
600 | + * |
|
601 | + * @return $lsx_controls array() |
|
602 | + */ |
|
603 | + function lsx_customizer_wc_controls( $lsx_controls ) { |
|
604 | + $lsx_controls['panels']['woocommerce'] = array( |
|
605 | + 'title' => esc_html__( 'WooCommerce', 'lsx' ), |
|
606 | + 'description' => esc_html__( 'Change the WooCommerce settings.', 'lsx' ), |
|
607 | + 'priority' => 23, |
|
608 | + ); |
|
609 | + |
|
610 | + /** |
|
611 | + * Global. |
|
612 | + */ |
|
613 | + |
|
614 | + $lsx_controls['sections']['lsx-wc-global'] = array( |
|
615 | + 'title' => esc_html__( 'LSX Global', 'lsx' ), |
|
616 | + 'description' => esc_html__( 'Change the WooCommerce global settings.', 'lsx' ), |
|
617 | + 'panel' => 'woocommerce', |
|
618 | + 'priority' => 1, |
|
619 | + ); |
|
620 | + |
|
621 | + $lsx_controls['settings']['lsx_wc_trust_footer_bar_status'] = array( |
|
622 | + 'default' => '1', |
|
623 | + 'sanitize_callback' => 'lsx_sanitize_checkbox', |
|
624 | + ); |
|
625 | + |
|
626 | + $lsx_controls['fields']['lsx_wc_trust_footer_bar_status'] = array( |
|
627 | + 'label' => esc_html__( 'Footer Trust Factors Section', 'lsx' ), |
|
628 | + 'description' => esc_html__( 'Enable the footer trust factors section.', 'lsx' ), |
|
629 | + 'section' => 'lsx-wc-global', |
|
630 | + 'type' => 'checkbox', |
|
631 | + 'priority' => 1, |
|
632 | + ); |
|
633 | + |
|
634 | + $lsx_controls['settings']['lsx_wc_mobile_footer_bar_status'] = array( |
|
635 | + 'default' => '1', |
|
636 | + 'sanitize_callback' => 'lsx_sanitize_checkbox', |
|
637 | + ); |
|
638 | + |
|
639 | + $lsx_controls['fields']['lsx_wc_mobile_footer_bar_status'] = array( |
|
640 | + 'label' => esc_html__( 'Footer Bar', 'lsx' ), |
|
641 | + 'description' => esc_html__( 'Enable the mobile footer bar.', 'lsx' ), |
|
642 | + 'section' => 'lsx-wc-global', |
|
643 | + 'type' => 'checkbox', |
|
644 | + 'priority' => 1, |
|
645 | + ); |
|
646 | + |
|
647 | + /** |
|
648 | + * Cart. |
|
649 | + */ |
|
650 | + |
|
651 | + $lsx_controls['sections']['lsx-wc-cart'] = array( |
|
652 | + 'title' => esc_html__( 'LSX Cart', 'lsx' ), |
|
653 | + 'description' => esc_html__( 'Change the WooCommerce cart settings.', 'lsx' ), |
|
654 | + 'panel' => 'woocommerce', |
|
655 | + 'priority' => 2, |
|
656 | + ); |
|
657 | + |
|
658 | + $lsx_controls['settings']['lsx_header_wc_cart'] = array( |
|
659 | + 'default' => false, |
|
660 | + 'sanitize_callback' => 'lsx_sanitize_checkbox', |
|
661 | + ); |
|
662 | + |
|
663 | + $lsx_controls['fields']['lsx_header_wc_cart'] = array( |
|
664 | + 'label' => esc_html__( 'Menu Item', 'lsx' ), |
|
665 | + 'description' => esc_html__( 'Enable the cart menu item.', 'lsx' ), |
|
666 | + 'section' => 'lsx-wc-cart', |
|
667 | + 'type' => 'checkbox', |
|
668 | + 'priority' => 1, |
|
669 | + ); |
|
670 | + |
|
671 | + return $lsx_controls; |
|
672 | + } |
|
673 | + |
|
674 | + add_filter( 'lsx_customizer_controls', 'lsx_customizer_wc_controls' ); |
|
675 | 675 | |
676 | 676 | endif; |
677 | 677 | |
678 | 678 | if ( ! function_exists( 'lsx_wc_global_header_title' ) ) : |
679 | 679 | |
680 | - /** |
|
681 | - * Move the shop title into the global header |
|
682 | - * |
|
683 | - * @package lsx |
|
684 | - * @subpackage the-events-calendar |
|
685 | - */ |
|
686 | - function lsx_wc_global_header_title( $title ) { |
|
680 | + /** |
|
681 | + * Move the shop title into the global header |
|
682 | + * |
|
683 | + * @package lsx |
|
684 | + * @subpackage the-events-calendar |
|
685 | + */ |
|
686 | + function lsx_wc_global_header_title( $title ) { |
|
687 | 687 | |
688 | - if ( is_woocommerce() && is_shop() ) { |
|
688 | + if ( is_woocommerce() && is_shop() ) { |
|
689 | 689 | |
690 | - $title = __( 'Shop', 'lsx' ); |
|
691 | - } |
|
690 | + $title = __( 'Shop', 'lsx' ); |
|
691 | + } |
|
692 | 692 | |
693 | - return $title; |
|
694 | - } |
|
695 | - add_filter( 'lsx_global_header_title', 'lsx_wc_global_header_title', 200, 1 ); |
|
693 | + return $title; |
|
694 | + } |
|
695 | + add_filter( 'lsx_global_header_title', 'lsx_wc_global_header_title', 200, 1 ); |
|
696 | 696 | |
697 | 697 | endif; |
698 | 698 | |
699 | 699 | |
700 | 700 | if ( ! function_exists( 'lsx_wc_footer_bar' ) ) : |
701 | 701 | |
702 | - /** |
|
703 | - * Display WC footer bar. |
|
704 | - * |
|
705 | - * @package lsx |
|
706 | - * @subpackage woocommerce |
|
707 | - */ |
|
708 | - function lsx_wc_footer_bar() { |
|
709 | - $cart_url = function_exists( 'wc_get_cart_url' ) ? wc_get_cart_url() : WC()->cart->get_cart_url(); |
|
710 | - if ( ! empty( get_theme_mod( 'lsx_wc_mobile_footer_bar_status', '1' ) ) ) : |
|
711 | - ?> |
|
702 | + /** |
|
703 | + * Display WC footer bar. |
|
704 | + * |
|
705 | + * @package lsx |
|
706 | + * @subpackage woocommerce |
|
707 | + */ |
|
708 | + function lsx_wc_footer_bar() { |
|
709 | + $cart_url = function_exists( 'wc_get_cart_url' ) ? wc_get_cart_url() : WC()->cart->get_cart_url(); |
|
710 | + if ( ! empty( get_theme_mod( 'lsx_wc_mobile_footer_bar_status', '1' ) ) ) : |
|
711 | + ?> |
|
712 | 712 | <div class="lsx-wc-footer-bar"> |
713 | 713 | <form role="search" method="get" action="<?php echo esc_url( home_url() ); ?>" class="lsx-wc-footer-bar-form"> |
714 | 714 | <fieldset> |
@@ -752,156 +752,156 @@ discard block |
||
752 | 752 | </ul> |
753 | 753 | </div> |
754 | 754 | <?php |
755 | - endif; |
|
756 | - } |
|
755 | + endif; |
|
756 | + } |
|
757 | 757 | |
758 | - add_action( 'lsx_body_bottom', 'lsx_wc_footer_bar', 15 ); |
|
758 | + add_action( 'lsx_body_bottom', 'lsx_wc_footer_bar', 15 ); |
|
759 | 759 | |
760 | 760 | endif; |
761 | 761 | |
762 | 762 | if ( ! function_exists( 'lsx_wc_body_class' ) ) : |
763 | 763 | |
764 | - /** |
|
765 | - * Changes body class. |
|
766 | - * |
|
767 | - * @package lsx |
|
768 | - * @subpackage woocommerce |
|
769 | - */ |
|
770 | - function lsx_wc_body_class( $classes ) { |
|
771 | - global $post; |
|
764 | + /** |
|
765 | + * Changes body class. |
|
766 | + * |
|
767 | + * @package lsx |
|
768 | + * @subpackage woocommerce |
|
769 | + */ |
|
770 | + function lsx_wc_body_class( $classes ) { |
|
771 | + global $post; |
|
772 | 772 | |
773 | - if ( $post && class_exists( 'WC_Wishlists_Pages' ) && WC_Wishlists_Pages::is_wishlist_page( $post->post_name ) ) { |
|
774 | - $classes[] = 'woocommerce-page woocommerce-wishlist'; |
|
775 | - } |
|
773 | + if ( $post && class_exists( 'WC_Wishlists_Pages' ) && WC_Wishlists_Pages::is_wishlist_page( $post->post_name ) ) { |
|
774 | + $classes[] = 'woocommerce-page woocommerce-wishlist'; |
|
775 | + } |
|
776 | 776 | |
777 | - if ( ! empty( get_theme_mod( 'lsx_wc_mobile_footer_bar_status', '1' ) ) ) { |
|
778 | - $classes[] = 'lsx-wc-has-footer-bar'; |
|
779 | - } |
|
777 | + if ( ! empty( get_theme_mod( 'lsx_wc_mobile_footer_bar_status', '1' ) ) ) { |
|
778 | + $classes[] = 'lsx-wc-has-footer-bar'; |
|
779 | + } |
|
780 | 780 | |
781 | - return $classes; |
|
782 | - } |
|
781 | + return $classes; |
|
782 | + } |
|
783 | 783 | |
784 | - add_filter( 'body_class', 'lsx_wc_body_class', 2999 ); |
|
784 | + add_filter( 'body_class', 'lsx_wc_body_class', 2999 ); |
|
785 | 785 | |
786 | 786 | endif; |
787 | 787 | |
788 | 788 | if ( ! function_exists( 'lsx_wc_downloadable_products' ) ) : |
789 | 789 | |
790 | - /** |
|
791 | - * Changes downloads "download" button text. |
|
792 | - * |
|
793 | - * @package lsx |
|
794 | - * @subpackage woocommerce |
|
795 | - */ |
|
796 | - function lsx_wc_downloadable_products( $downloads ) { |
|
797 | - foreach ( $downloads as $i => $download ) { |
|
798 | - $downloads[ $i ]['download_name'] = esc_html__( 'Download', 'lsx' ); |
|
799 | - } |
|
800 | - |
|
801 | - return $downloads; |
|
802 | - } |
|
790 | + /** |
|
791 | + * Changes downloads "download" button text. |
|
792 | + * |
|
793 | + * @package lsx |
|
794 | + * @subpackage woocommerce |
|
795 | + */ |
|
796 | + function lsx_wc_downloadable_products( $downloads ) { |
|
797 | + foreach ( $downloads as $i => $download ) { |
|
798 | + $downloads[ $i ]['download_name'] = esc_html__( 'Download', 'lsx' ); |
|
799 | + } |
|
800 | + |
|
801 | + return $downloads; |
|
802 | + } |
|
803 | 803 | |
804 | - add_filter( 'woocommerce_customer_get_downloadable_products', 'lsx_wc_downloadable_products', 2999 ); |
|
804 | + add_filter( 'woocommerce_customer_get_downloadable_products', 'lsx_wc_downloadable_products', 2999 ); |
|
805 | 805 | |
806 | 806 | endif; |
807 | 807 | |
808 | 808 | if ( ! function_exists( 'lsx_wc_move_bundle_products' ) ) : |
809 | 809 | |
810 | - /** |
|
811 | - * WooCommerce - Move the bundle products to a tab. |
|
812 | - * |
|
813 | - * @package lsx |
|
814 | - * @subpackage woocommerce |
|
815 | - */ |
|
816 | - function lsx_wc_move_bundle_products( $tabs ) { |
|
817 | - global $product, $post; |
|
810 | + /** |
|
811 | + * WooCommerce - Move the bundle products to a tab. |
|
812 | + * |
|
813 | + * @package lsx |
|
814 | + * @subpackage woocommerce |
|
815 | + */ |
|
816 | + function lsx_wc_move_bundle_products( $tabs ) { |
|
817 | + global $product, $post; |
|
818 | 818 | |
819 | - if ( is_admin() ) { |
|
820 | - return $tabs; |
|
821 | - } |
|
822 | - |
|
823 | - if ( method_exists( $product, 'get_bundled_items' ) ) { |
|
824 | - $bundled_items = $product->get_bundled_items(); |
|
825 | - |
|
826 | - if ( ! empty( $bundled_items ) ) { |
|
827 | - $tabs['bundled_products'] = array( |
|
828 | - 'title' => __( 'Included Products', 'lsx' ), |
|
829 | - 'priority' => 10, |
|
830 | - 'callback' => 'lsx_wc_bundle_products', |
|
831 | - ); |
|
832 | - } |
|
833 | - } |
|
834 | - |
|
835 | - if ( isset( $tabs['description'] ) ) { |
|
836 | - $tabs['description']['priority'] = 5; |
|
837 | - } |
|
838 | - |
|
839 | - if ( isset( $tabs['reviews'] ) ) { |
|
840 | - $tabs['reviews']['priority'] = 15; |
|
841 | - } |
|
842 | - |
|
843 | - if ( isset( $tabs['product_enquiry'] ) ) { |
|
844 | - $tabs['product_enquiry']['priority'] = 20; |
|
845 | - } |
|
846 | - |
|
847 | - return $tabs; |
|
848 | - } |
|
819 | + if ( is_admin() ) { |
|
820 | + return $tabs; |
|
821 | + } |
|
822 | + |
|
823 | + if ( method_exists( $product, 'get_bundled_items' ) ) { |
|
824 | + $bundled_items = $product->get_bundled_items(); |
|
825 | + |
|
826 | + if ( ! empty( $bundled_items ) ) { |
|
827 | + $tabs['bundled_products'] = array( |
|
828 | + 'title' => __( 'Included Products', 'lsx' ), |
|
829 | + 'priority' => 10, |
|
830 | + 'callback' => 'lsx_wc_bundle_products', |
|
831 | + ); |
|
832 | + } |
|
833 | + } |
|
834 | + |
|
835 | + if ( isset( $tabs['description'] ) ) { |
|
836 | + $tabs['description']['priority'] = 5; |
|
837 | + } |
|
849 | 838 | |
850 | - add_action( 'woocommerce_product_tabs', 'lsx_wc_move_bundle_products', 50 ); |
|
839 | + if ( isset( $tabs['reviews'] ) ) { |
|
840 | + $tabs['reviews']['priority'] = 15; |
|
841 | + } |
|
842 | + |
|
843 | + if ( isset( $tabs['product_enquiry'] ) ) { |
|
844 | + $tabs['product_enquiry']['priority'] = 20; |
|
845 | + } |
|
846 | + |
|
847 | + return $tabs; |
|
848 | + } |
|
849 | + |
|
850 | + add_action( 'woocommerce_product_tabs', 'lsx_wc_move_bundle_products', 50 ); |
|
851 | 851 | |
852 | 852 | endif; |
853 | 853 | |
854 | 854 | if ( ! function_exists( 'lsx_wc_bundle_products' ) ) : |
855 | 855 | |
856 | - function lsx_wc_bundle_products() { |
|
857 | - global $product, $post; |
|
856 | + function lsx_wc_bundle_products() { |
|
857 | + global $product, $post; |
|
858 | 858 | |
859 | - if ( method_exists( $product, 'get_bundled_items' ) ) { |
|
860 | - $bundled_items = $product->get_bundled_items(); |
|
859 | + if ( method_exists( $product, 'get_bundled_items' ) ) { |
|
860 | + $bundled_items = $product->get_bundled_items(); |
|
861 | 861 | |
862 | - // do_action( 'woocommerce_before_bundled_items', $product ); |
|
862 | + // do_action( 'woocommerce_before_bundled_items', $product ); |
|
863 | 863 | |
864 | - // foreach ( $bundled_items as $bundled_item ) { |
|
865 | - // do_action( 'woocommerce_bundled_item_details', $bundled_item, $product ); |
|
866 | - // } |
|
864 | + // foreach ( $bundled_items as $bundled_item ) { |
|
865 | + // do_action( 'woocommerce_bundled_item_details', $bundled_item, $product ); |
|
866 | + // } |
|
867 | 867 | |
868 | - // do_action( 'woocommerce_after_bundled_items', $product ); |
|
868 | + // do_action( 'woocommerce_after_bundled_items', $product ); |
|
869 | 869 | |
870 | - $product_original = $product; |
|
870 | + $product_original = $product; |
|
871 | 871 | |
872 | - // $this->widget_start( $args, $instance ); |
|
872 | + // $this->widget_start( $args, $instance ); |
|
873 | 873 | |
874 | - // @codingStandardsIgnoreLine |
|
875 | - echo apply_filters( 'woocommerce_before_widget_product_list', '<ul class="product_list_widget">' ); |
|
874 | + // @codingStandardsIgnoreLine |
|
875 | + echo apply_filters( 'woocommerce_before_widget_product_list', '<ul class="product_list_widget">' ); |
|
876 | 876 | |
877 | - foreach ( $bundled_items as $bundled_item ) { |
|
878 | - $product = wc_get_product( $bundled_item->item_data['product_id'] ); |
|
879 | - wc_get_template( 'content-widget-product.php' ); |
|
880 | - $product = $product_original; |
|
881 | - } |
|
877 | + foreach ( $bundled_items as $bundled_item ) { |
|
878 | + $product = wc_get_product( $bundled_item->item_data['product_id'] ); |
|
879 | + wc_get_template( 'content-widget-product.php' ); |
|
880 | + $product = $product_original; |
|
881 | + } |
|
882 | 882 | |
883 | - // @codingStandardsIgnoreLine |
|
884 | - echo apply_filters( 'woocommerce_after_widget_product_list', '</ul>' ); |
|
885 | - } |
|
883 | + // @codingStandardsIgnoreLine |
|
884 | + echo apply_filters( 'woocommerce_after_widget_product_list', '</ul>' ); |
|
885 | + } |
|
886 | 886 | |
887 | - // $this->widget_end( $args ); |
|
888 | - } |
|
887 | + // $this->widget_end( $args ); |
|
888 | + } |
|
889 | 889 | |
890 | 890 | endif; |
891 | 891 | |
892 | 892 | |
893 | 893 | if ( ! function_exists( 'lsx_wc_product_searchform' ) ) : |
894 | - /** |
|
895 | - * woo_custom_product_searchform |
|
896 | - * |
|
897 | - * @access public |
|
898 | - * @since 1.0 |
|
899 | - * @return void |
|
900 | - */ |
|
901 | - function lsx_wc_product_searchform( $form ) { |
|
902 | - |
|
903 | - ob_start(); |
|
904 | - ?> |
|
894 | + /** |
|
895 | + * woo_custom_product_searchform |
|
896 | + * |
|
897 | + * @access public |
|
898 | + * @since 1.0 |
|
899 | + * @return void |
|
900 | + */ |
|
901 | + function lsx_wc_product_searchform( $form ) { |
|
902 | + |
|
903 | + ob_start(); |
|
904 | + ?> |
|
905 | 905 | <form role="search" method="get" class="search-form form-inline" id="searchform" action="<?php echo esc_url( home_url() ); ?>"> |
906 | 906 | |
907 | 907 | <div class="input-group"> |
@@ -916,45 +916,45 @@ discard block |
||
916 | 916 | <input type="hidden" name="post_type" value="product" /> |
917 | 917 | </form> |
918 | 918 | <?php |
919 | - $form = ob_get_clean(); |
|
920 | - return $form; |
|
919 | + $form = ob_get_clean(); |
|
920 | + return $form; |
|
921 | 921 | |
922 | - } |
|
922 | + } |
|
923 | 923 | endif; |
924 | 924 | add_filter( 'get_product_search_form', 'lsx_wc_product_searchform', 10, 1 ); |
925 | 925 | |
926 | - /** |
|
927 | - * Output the pagination. |
|
928 | - */ |
|
926 | + /** |
|
927 | + * Output the pagination. |
|
928 | + */ |
|
929 | 929 | function woocommerce_pagination() { |
930 | - if ( ! wc_get_loop_prop( 'is_paginated' ) || ! woocommerce_products_will_display() ) { |
|
931 | - return; |
|
932 | - } |
|
933 | - $args = array( |
|
934 | - 'total' => wc_get_loop_prop( 'total_pages' ), |
|
935 | - 'current' => wc_get_loop_prop( 'current_page' ), |
|
936 | - ); |
|
937 | - |
|
938 | - if ( wc_get_loop_prop( 'is_shortcode' ) ) { |
|
939 | - $args['base'] = esc_url_raw( add_query_arg( 'product-page', '%#%', false ) ); |
|
940 | - $args['format'] = '?product-page = %#%'; |
|
941 | - } else { |
|
942 | - $args['base'] = esc_url_raw( str_replace( 999999999, '%#%', remove_query_arg( 'add-to-cart', get_pagenum_link( 999999999, false ) ) ) ); |
|
943 | - $args['format'] = ''; |
|
944 | - } |
|
945 | - |
|
946 | - echo wp_kses_post( '<div class="lsx-pagination-wrapper">' ); |
|
947 | - $template = wc_get_template_html( 'loop/pagination.php', $args ); |
|
948 | - $template = str_replace( 'woocommerce-pagination', 'lsx-pagination', $template ); |
|
949 | - echo wp_kses_post( $template ); |
|
950 | - echo wp_kses_post( '</div>' ); |
|
930 | + if ( ! wc_get_loop_prop( 'is_paginated' ) || ! woocommerce_products_will_display() ) { |
|
931 | + return; |
|
932 | + } |
|
933 | + $args = array( |
|
934 | + 'total' => wc_get_loop_prop( 'total_pages' ), |
|
935 | + 'current' => wc_get_loop_prop( 'current_page' ), |
|
936 | + ); |
|
937 | + |
|
938 | + if ( wc_get_loop_prop( 'is_shortcode' ) ) { |
|
939 | + $args['base'] = esc_url_raw( add_query_arg( 'product-page', '%#%', false ) ); |
|
940 | + $args['format'] = '?product-page = %#%'; |
|
941 | + } else { |
|
942 | + $args['base'] = esc_url_raw( str_replace( 999999999, '%#%', remove_query_arg( 'add-to-cart', get_pagenum_link( 999999999, false ) ) ) ); |
|
943 | + $args['format'] = ''; |
|
944 | + } |
|
945 | + |
|
946 | + echo wp_kses_post( '<div class="lsx-pagination-wrapper">' ); |
|
947 | + $template = wc_get_template_html( 'loop/pagination.php', $args ); |
|
948 | + $template = str_replace( 'woocommerce-pagination', 'lsx-pagination', $template ); |
|
949 | + echo wp_kses_post( $template ); |
|
950 | + echo wp_kses_post( '</div>' ); |
|
951 | 951 | } |
952 | 952 | |
953 | 953 | function lsx_wc_pagination_args( $args ) { |
954 | - $args['prev_text'] = '<span class="meta-nav">←</span> ' . esc_html__( 'Previous', 'lsx' ); |
|
955 | - $args['next_text'] = esc_html__( 'Next', 'lsx' ) . ' <span class="meta-nav">→</span>'; |
|
956 | - $args['type'] = 'plain'; |
|
957 | - return $args; |
|
954 | + $args['prev_text'] = '<span class="meta-nav">←</span> ' . esc_html__( 'Previous', 'lsx' ); |
|
955 | + $args['next_text'] = esc_html__( 'Next', 'lsx' ) . ' <span class="meta-nav">→</span>'; |
|
956 | + $args['type'] = 'plain'; |
|
957 | + return $args; |
|
958 | 958 | } |
959 | 959 | add_filter( 'woocommerce_pagination_args', 'lsx_wc_pagination_args', 10, 1 ); |
960 | 960 | |
@@ -968,33 +968,33 @@ discard block |
||
968 | 968 | * @return array |
969 | 969 | */ |
970 | 970 | function lsx_wc_product_widget_template( $located, $template_name ) { |
971 | - if ( 'content-widget-product.php' === $template_name || 'content-widget-review.php' === $template_name ) { |
|
972 | - |
|
973 | - $new_location = get_stylesheet_directory() . '/partials/' . $template_name; |
|
974 | - if ( file_exists( $new_location ) ) { |
|
975 | - $located = $new_location; |
|
976 | - } else { |
|
977 | - $new_location = get_parent_theme_file_path() . '/partials/' . $template_name; |
|
978 | - if ( file_exists( $new_location ) ) { |
|
979 | - $located = $new_location; |
|
980 | - } |
|
981 | - } |
|
982 | - } |
|
983 | - return $located; |
|
971 | + if ( 'content-widget-product.php' === $template_name || 'content-widget-review.php' === $template_name ) { |
|
972 | + |
|
973 | + $new_location = get_stylesheet_directory() . '/partials/' . $template_name; |
|
974 | + if ( file_exists( $new_location ) ) { |
|
975 | + $located = $new_location; |
|
976 | + } else { |
|
977 | + $new_location = get_parent_theme_file_path() . '/partials/' . $template_name; |
|
978 | + if ( file_exists( $new_location ) ) { |
|
979 | + $located = $new_location; |
|
980 | + } |
|
981 | + } |
|
982 | + } |
|
983 | + return $located; |
|
984 | 984 | } |
985 | 985 | add_filter( 'wc_get_template', 'lsx_wc_product_widget_template', 90, 2 ); |
986 | 986 | |
987 | 987 | if ( ! function_exists( 'lsx_payment_gateway_logos' ) ) { |
988 | - /** |
|
989 | - * Add Lets Encrypt and PayFast logos to cart. |
|
990 | - **/ |
|
991 | - function lsx_payment_gateway_logos() { |
|
992 | - $encript_image = get_template_directory_uri() . '/assets/images/lets-encript.svg'; |
|
993 | - $payfast_image = get_template_directory_uri() . '/assets/images/payfast-footer-logo.svg'; |
|
994 | - $payment_logos = get_template_directory_uri() . '/assets/images/payment-logos.svg'; |
|
995 | - $payment_logos_mobile = get_template_directory_uri() . '/assets/images/payment-logos-mobile.svg'; |
|
996 | - if ( ( is_checkout() || is_cart() ) && ( ! empty( get_theme_mod( 'lsx_wc_trust_footer_bar_status', '1' ) ) ) ) { |
|
997 | - ?> |
|
988 | + /** |
|
989 | + * Add Lets Encrypt and PayFast logos to cart. |
|
990 | + **/ |
|
991 | + function lsx_payment_gateway_logos() { |
|
992 | + $encript_image = get_template_directory_uri() . '/assets/images/lets-encript.svg'; |
|
993 | + $payfast_image = get_template_directory_uri() . '/assets/images/payfast-footer-logo.svg'; |
|
994 | + $payment_logos = get_template_directory_uri() . '/assets/images/payment-logos.svg'; |
|
995 | + $payment_logos_mobile = get_template_directory_uri() . '/assets/images/payment-logos-mobile.svg'; |
|
996 | + if ( ( is_checkout() || is_cart() ) && ( ! empty( get_theme_mod( 'lsx_wc_trust_footer_bar_status', '1' ) ) ) ) { |
|
997 | + ?> |
|
998 | 998 | <div class="row text-center vertical-align lsx-full-width-base-small checkout-cta-bottom"> |
999 | 999 | <div class="col-md-12 img-payfast"> |
1000 | 1000 | <img src="<?php echo esc_url( $payfast_image ); ?>" alt="payfast"/> |
@@ -1011,60 +1011,60 @@ discard block |
||
1011 | 1011 | </div> |
1012 | 1012 | |
1013 | 1013 | <?php |
1014 | - } |
|
1015 | - } |
|
1016 | - add_action( 'lsx_footer_before', 'lsx_payment_gateway_logos' ); |
|
1014 | + } |
|
1015 | + } |
|
1016 | + add_action( 'lsx_footer_before', 'lsx_payment_gateway_logos' ); |
|
1017 | 1017 | } |
1018 | 1018 | |
1019 | 1019 | if ( ! function_exists( 'lsx_wc_archive_header' ) ) { |
1020 | - /** |
|
1021 | - * Add Lets Encrypt and PayFast logos to cart. |
|
1022 | - **/ |
|
1023 | - function lsx_wc_archive_header() { |
|
1024 | - if ( class_exists( 'WooCommerce' ) && ( is_shop() || is_product_category() || is_product_tag() ) ) { |
|
1025 | - |
|
1026 | - if ( function_exists( 'lsx_search' ) ) { |
|
1027 | - $search = lsx_search(); |
|
1028 | - remove_action( 'lsx_content_wrap_before', array( $search->frontend, 'wc_archive_header' ), 140 ); |
|
1029 | - } |
|
1030 | - |
|
1031 | - $default_size = 'sm'; |
|
1032 | - $size = apply_filters( 'lsx_bootstrap_column_size', $default_size ); |
|
1033 | - ?> |
|
1020 | + /** |
|
1021 | + * Add Lets Encrypt and PayFast logos to cart. |
|
1022 | + **/ |
|
1023 | + function lsx_wc_archive_header() { |
|
1024 | + if ( class_exists( 'WooCommerce' ) && ( is_shop() || is_product_category() || is_product_tag() ) ) { |
|
1025 | + |
|
1026 | + if ( function_exists( 'lsx_search' ) ) { |
|
1027 | + $search = lsx_search(); |
|
1028 | + remove_action( 'lsx_content_wrap_before', array( $search->frontend, 'wc_archive_header' ), 140 ); |
|
1029 | + } |
|
1030 | + |
|
1031 | + $default_size = 'sm'; |
|
1032 | + $size = apply_filters( 'lsx_bootstrap_column_size', $default_size ); |
|
1033 | + ?> |
|
1034 | 1034 | <div class="archive-header-wrapper banner-woocommerce col-<?php echo esc_attr( $size ); ?>-12"> |
1035 | 1035 | <?php lsx_global_header_inner_bottom(); ?> |
1036 | 1036 | <header class="archive-header"> |
1037 | 1037 | <h1 class="archive-title"><?php woocommerce_page_title(); ?></h1> |
1038 | 1038 | <?php |
1039 | - if ( is_product_category() || is_product_tag() ) { |
|
1040 | - $description = get_the_archive_description(); |
|
1041 | - if ( ! empty( $description ) && '' !== $description ) { |
|
1042 | - echo wp_kses_post( $description ); |
|
1043 | - } |
|
1044 | - } else { |
|
1045 | - $shop_page = wc_get_page_id( 'shop' ); |
|
1046 | - if ( 0 < $shop_page ) { |
|
1047 | - $shop_page = get_post( $shop_page ); |
|
1048 | - if ( ! empty( $shop_page->post_excerpt ) ) { |
|
1049 | - echo wp_kses_post( '<p>' . $shop_page->post_excerpt . '</p>' ); |
|
1050 | - } |
|
1051 | - } |
|
1052 | - } |
|
1053 | - ?> |
|
1039 | + if ( is_product_category() || is_product_tag() ) { |
|
1040 | + $description = get_the_archive_description(); |
|
1041 | + if ( ! empty( $description ) && '' !== $description ) { |
|
1042 | + echo wp_kses_post( $description ); |
|
1043 | + } |
|
1044 | + } else { |
|
1045 | + $shop_page = wc_get_page_id( 'shop' ); |
|
1046 | + if ( 0 < $shop_page ) { |
|
1047 | + $shop_page = get_post( $shop_page ); |
|
1048 | + if ( ! empty( $shop_page->post_excerpt ) ) { |
|
1049 | + echo wp_kses_post( '<p>' . $shop_page->post_excerpt . '</p>' ); |
|
1050 | + } |
|
1051 | + } |
|
1052 | + } |
|
1053 | + ?> |
|
1054 | 1054 | </header> |
1055 | 1055 | </div> |
1056 | 1056 | <?php |
1057 | - } |
|
1058 | - } |
|
1059 | - add_action( 'lsx_content_wrap_before', 'lsx_wc_archive_header', 100 ); |
|
1057 | + } |
|
1058 | + } |
|
1059 | + add_action( 'lsx_content_wrap_before', 'lsx_wc_archive_header', 100 ); |
|
1060 | 1060 | } |
1061 | 1061 | |
1062 | 1062 | /** |
1063 | 1063 | * Moving the Reset Variations link. |
1064 | 1064 | **/ |
1065 | 1065 | function lsx_wc_reset_variations_link() { |
1066 | - echo '<a class="reset_variations" href="#">' . esc_html__( 'Clear', 'lsx' ) . '</a>'; |
|
1067 | - add_filter( 'woocommerce_reset_variations_link', 'lsx_wc_disable_default_reset_variations_link', 10, 1 ); |
|
1066 | + echo '<a class="reset_variations" href="#">' . esc_html__( 'Clear', 'lsx' ) . '</a>'; |
|
1067 | + add_filter( 'woocommerce_reset_variations_link', 'lsx_wc_disable_default_reset_variations_link', 10, 1 ); |
|
1068 | 1068 | } |
1069 | 1069 | add_action( 'woocommerce_before_variations_form', 'lsx_wc_reset_variations_link', 10 ); |
1070 | 1070 | |
@@ -1075,7 +1075,7 @@ discard block |
||
1075 | 1075 | * @return string |
1076 | 1076 | */ |
1077 | 1077 | function lsx_wc_disable_default_reset_variations_link( $link = '' ) { |
1078 | - return ''; |
|
1078 | + return ''; |
|
1079 | 1079 | } |
1080 | 1080 | |
1081 | 1081 | /*if ( ! function_exists( 'lsx_wc_template_single_meta' ) ) { |
@@ -1094,29 +1094,29 @@ discard block |
||
1094 | 1094 | */ |
1095 | 1095 | |
1096 | 1096 | if ( ! function_exists( 'lsx_wc_woocommerce_sku' ) ) { |
1097 | - /** |
|
1098 | - * Undocumented function |
|
1099 | - * |
|
1100 | - * @return void |
|
1101 | - */ |
|
1102 | - function lsx_wc_woocommerce_sku() { |
|
1103 | - global $product; |
|
1104 | - if ( function_exists( 'wc_product_sku_enabled' ) && wc_product_sku_enabled() && ! empty( $product->get_sku() ) && 'N/A' !== $product->get_sku() ) { |
|
1105 | - ?> |
|
1097 | + /** |
|
1098 | + * Undocumented function |
|
1099 | + * |
|
1100 | + * @return void |
|
1101 | + */ |
|
1102 | + function lsx_wc_woocommerce_sku() { |
|
1103 | + global $product; |
|
1104 | + if ( function_exists( 'wc_product_sku_enabled' ) && wc_product_sku_enabled() && ! empty( $product->get_sku() ) && 'N/A' !== $product->get_sku() ) { |
|
1105 | + ?> |
|
1106 | 1106 | <span class="sku_wrapper"><?php esc_html_e( 'SKU:', 'lsx' ); ?> <span class="sku"><?php echo esc_attr( $product->get_sku() ); ?></span></span> |
1107 | 1107 | <?php |
1108 | - } |
|
1109 | - add_filter( 'wc_product_sku_enabled', 'lsx_wc_default_woocommerce_sku_disable' ); |
|
1110 | - } |
|
1111 | - add_action( 'woocommerce_product_meta_start', 'lsx_wc_woocommerce_sku', 10 ); |
|
1112 | - /** |
|
1113 | - * Disabled the default WC SKU |
|
1114 | - * |
|
1115 | - * @param boolean $enable |
|
1116 | - * @return boolean |
|
1117 | - */ |
|
1118 | - function lsx_wc_default_woocommerce_sku_disable( $enable = false ) { |
|
1119 | - $enable = false; |
|
1120 | - return $enable; |
|
1121 | - } |
|
1108 | + } |
|
1109 | + add_filter( 'wc_product_sku_enabled', 'lsx_wc_default_woocommerce_sku_disable' ); |
|
1110 | + } |
|
1111 | + add_action( 'woocommerce_product_meta_start', 'lsx_wc_woocommerce_sku', 10 ); |
|
1112 | + /** |
|
1113 | + * Disabled the default WC SKU |
|
1114 | + * |
|
1115 | + * @param boolean $enable |
|
1116 | + * @return boolean |
|
1117 | + */ |
|
1118 | + function lsx_wc_default_woocommerce_sku_disable( $enable = false ) { |
|
1119 | + $enable = false; |
|
1120 | + return $enable; |
|
1121 | + } |
|
1122 | 1122 | } |