Passed
Push — master ( ff6050...076a54 )
by Virginia
04:26
created
includes/bbpress/bbpress.php 1 patch
Indentation   +17 added lines, -17 removed lines patch added patch discarded remove patch
@@ -7,25 +7,25 @@  discard block
 block discarded – undo
7 7
  */
8 8
 
9 9
 if ( ! defined( 'ABSPATH' ) ) {
10
-	exit;
10
+     exit;
11 11
 }
12 12
 
13 13
 global $bbpress;
14 14
 
15 15
 if ( ! function_exists( 'lsx_bbpress_scripts_add_styles' ) ) :
16 16
 
17
-	/**
18
-	 * bbPress enqueue styles.
19
-	 *
20
-	 * @package    lsx
21
-	 * @subpackage bbpress
22
-	 */
23
-	function lsx_bbpress_scripts_add_styles() {
24
-		wp_enqueue_style( 'bbpress-lsx', get_template_directory_uri() . '/assets/css/bb-press/bb-press.css', array( 'lsx_main' ), LSX_VERSION );
25
-		wp_style_add_data( 'bbpress-lsx', 'rtl', 'replace' );
26
-	}
17
+     /**
18
+      * bbPress enqueue styles.
19
+      *
20
+      * @package    lsx
21
+      * @subpackage bbpress
22
+      */
23
+     function lsx_bbpress_scripts_add_styles() {
24
+          wp_enqueue_style( 'bbpress-lsx', get_template_directory_uri() . '/assets/css/bb-press/bb-press.css', array( 'lsx_main' ), LSX_VERSION );
25
+          wp_style_add_data( 'bbpress-lsx', 'rtl', 'replace' );
26
+     }
27 27
 
28
-	add_action( 'wp_enqueue_scripts', 'lsx_bbpress_scripts_add_styles' );
28
+     add_action( 'wp_enqueue_scripts', 'lsx_bbpress_scripts_add_styles' );
29 29
 
30 30
 endif;
31 31
 
@@ -34,9 +34,9 @@  discard block
 block discarded – undo
34 34
 add_filter( 'get_the_archive_title', 'modify_archive_title', 10, 1 );
35 35
 
36 36
 function modify_archive_title( $title ) {
37
-	if ( ! is_post_type_archive( 'forum' ) ) {
38
-		return $title;
39
-	}
40
-	$title = __( 'Forums', 'lsx' );
41
-	return $title;
37
+     if ( ! is_post_type_archive( 'forum' ) ) {
38
+          return $title;
39
+     }
40
+     $title = __( 'Forums', 'lsx' );
41
+     return $title;
42 42
 }
Please login to merge, or discard this patch.
partials/content-page-cover.php 1 patch
Indentation   +67 added lines, -67 removed lines patch added patch discarded remove patch
@@ -14,38 +14,38 @@  discard block
 block discarded – undo
14 14
 	<?php //lsx_entry_top(); ?>
15 15
 
16 16
 	<?php
17
-	// On the cover page template, output the cover header.
18
-	$cover_header_style   = '';
19
-	$cover_header_classes = '';
20
-
21
-	$color_overlay_style   = '';
22
-	$color_overlay_classes = '';
23
-
24
-	$image_url = ! post_password_required() ? get_the_post_thumbnail_url( get_the_ID(), 'full' ) : '';
25
-
26
-	if ( $image_url ) {
27
-		$cover_header_style   = ' style="background-image: url( ' . esc_url( $image_url ) . ' );"';
28
-		$cover_header_classes = ' bg-image';
29
-	}
30
-
31
-	// Get the color used for the color overlay.
32
-	$color_overlay_color = get_theme_mod( 'lsx_cover_template_overlay_background_color' );
33
-	if ( $color_overlay_color ) {
34
-		$color_overlay_style = ' style="color: ' . esc_attr( $color_overlay_color ) . ';"';
35
-	} else {
36
-		$color_overlay_style = '';
37
-	}
38
-
39
-	// Get the fixed background attachment option.
40
-	if ( get_theme_mod( 'lsx_cover_template_fixed_background', true ) ) {
41
-		$cover_header_classes .= ' bg-attachment-fixed';
42
-	}
43
-
44
-	// Get the opacity of the color overlay.
45
-	$color_overlay_opacity  = get_theme_mod( 'lsx_cover_template_overlay_opacity' );
46
-	$color_overlay_opacity  = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity;
47
-	$color_overlay_classes .= ' opacity-' . $color_overlay_opacity;
48
-	?>
17
+     // On the cover page template, output the cover header.
18
+     $cover_header_style   = '';
19
+     $cover_header_classes = '';
20
+
21
+     $color_overlay_style   = '';
22
+     $color_overlay_classes = '';
23
+
24
+     $image_url = ! post_password_required() ? get_the_post_thumbnail_url( get_the_ID(), 'full' ) : '';
25
+
26
+     if ( $image_url ) {
27
+          $cover_header_style   = ' style="background-image: url( ' . esc_url( $image_url ) . ' );"';
28
+          $cover_header_classes = ' bg-image';
29
+     }
30
+
31
+     // Get the color used for the color overlay.
32
+     $color_overlay_color = get_theme_mod( 'lsx_cover_template_overlay_background_color' );
33
+     if ( $color_overlay_color ) {
34
+          $color_overlay_style = ' style="color: ' . esc_attr( $color_overlay_color ) . ';"';
35
+     } else {
36
+          $color_overlay_style = '';
37
+     }
38
+
39
+     // Get the fixed background attachment option.
40
+     if ( get_theme_mod( 'lsx_cover_template_fixed_background', true ) ) {
41
+          $cover_header_classes .= ' bg-attachment-fixed';
42
+     }
43
+
44
+     // Get the opacity of the color overlay.
45
+     $color_overlay_opacity  = get_theme_mod( 'lsx_cover_template_overlay_opacity' );
46
+     $color_overlay_opacity  = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity;
47
+     $color_overlay_classes .= ' opacity-' . $color_overlay_opacity;
48
+     ?>
49 49
 
50 50
 	<div class="cover-header <?php echo esc_html( $cover_header_classes ); ?>"<?php echo wp_kses_post( $cover_header_style ); ?>>
51 51
 		<div class="cover-header-inner-wrapper">
@@ -57,8 +57,8 @@  discard block
 block discarded – undo
57 57
 
58 58
 							<?php
59 59
 
60
-							if ( has_category() ) {
61
-								?>
60
+                                   if ( has_category() ) {
61
+                                        ?>
62 62
 
63 63
 								<div class="entry-categories">
64 64
 									<div class="entry-categories-inner">
@@ -67,12 +67,12 @@  discard block
 block discarded – undo
67 67
 								</div>
68 68
 
69 69
 								<?php
70
-							}
70
+                                   }
71 71
 
72
-							the_title( '<h1 class="entry-title">', '</h1>' );
72
+                                   the_title( '<h1 class="entry-title">', '</h1>' );
73 73
 
74
-							if ( is_page() ) {
75
-								?>
74
+                                   if ( is_page() ) {
75
+                                        ?>
76 76
 
77 77
 								<div class="to-the-content-wrapper">
78 78
 
@@ -83,26 +83,26 @@  discard block
 block discarded – undo
83 83
 								</div>
84 84
 
85 85
 								<?php
86
-							} else {
86
+                                   } else {
87 87
 
88
-								if ( has_excerpt() ) {
89
-									?>
88
+                                        if ( has_excerpt() ) {
89
+                                             ?>
90 90
 
91 91
 									<div class="intro-text section-inner">
92 92
 										<?php the_excerpt(); ?>
93 93
 									</div>
94 94
 
95 95
 									<?php
96
-								}
96
+                                        }
97 97
 
98
-								?>
98
+                                        ?>
99 99
 								<div class="entry-meta">
100 100
 									<?php lsx_post_meta_list_top(); ?>
101 101
 								</div><!-- .entry-meta -->
102 102
 								<?php
103 103
 
104
-							}
105
-							?>
104
+                                   }
105
+                                   ?>
106 106
 
107 107
 						</div>
108 108
 					</header>
@@ -115,15 +115,15 @@  discard block
 block discarded – undo
115 115
 		<?php lsx_entry_inside_top(); ?>
116 116
 
117 117
 		<?php
118
-			the_content();
119
-
120
-			wp_link_pages( array(
121
-				'before'      => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">',
122
-				'after'       => '</div></div>',
123
-				'link_before' => '<span>',
124
-				'link_after'  => '</span>',
125
-			) );
126
-		?>
118
+               the_content();
119
+
120
+               wp_link_pages( array(
121
+                    'before'      => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">',
122
+                    'after'       => '</div></div>',
123
+                    'link_before' => '<span>',
124
+                    'link_after'  => '</span>',
125
+               ) );
126
+          ?>
127 127
 	</div><!-- .entry-content -->
128 128
 
129 129
 	<footer class="footer-meta clearfix">
@@ -132,19 +132,19 @@  discard block
 block discarded – undo
132 132
 				<?php lsx_content_post_tags(); ?>
133 133
 
134 134
 				<?php
135
-				if ( class_exists( 'LSX_Sharing' ) ) {
136
-					lsx_content_sharing();
137
-				} else {
138
-					if ( function_exists( 'sharing_display' ) ) {
139
-						sharing_display( '', true );
140
-					}
141
-
142
-					if ( class_exists( 'Jetpack_Likes' ) ) {
143
-						$custom_likes = new Jetpack_Likes();
144
-						echo wp_kses_post( $custom_likes->post_likes( '' ) );
145
-					}
146
-				}
147
-				?>
135
+                    if ( class_exists( 'LSX_Sharing' ) ) {
136
+                         lsx_content_sharing();
137
+                    } else {
138
+                         if ( function_exists( 'sharing_display' ) ) {
139
+                              sharing_display( '', true );
140
+                         }
141
+
142
+                         if ( class_exists( 'Jetpack_Likes' ) ) {
143
+                              $custom_likes = new Jetpack_Likes();
144
+                              echo wp_kses_post( $custom_likes->post_likes( '' ) );
145
+                         }
146
+                    }
147
+                    ?>
148 148
 		<?php endif ?>
149 149
 	</footer><!-- .footer-meta -->
150 150
 
Please login to merge, or discard this patch.
includes/template-tags.php 1 patch
Indentation   +600 added lines, -600 removed lines patch added patch discarded remove patch
@@ -7,50 +7,50 @@  discard block
 block discarded – undo
7 7
  */
8 8
 
9 9
 if ( ! defined( 'ABSPATH' ) ) {
10
-	exit;
10
+     exit;
11 11
 }
12 12
 
13 13
 if ( ! function_exists( 'lsx_breadcrumbs' ) ) :
14 14
 
15
-	/**
16
-	 * Breadcrumbs.
17
-	 *
18
-	 * @package    lsx
19
-	 * @subpackage template-tags
20
-	 */
21
-	function lsx_breadcrumbs() {
22
-		if ( ! function_exists( 'yoast_breadcrumb' ) && ! function_exists( 'woocommerce_breadcrumb' ) ) {
23
-			return null;
24
-		}
25
-
26
-		$show_on_front = get_option( 'show_on_front' );
27
-
28
-		if ( ( 'posts' === $show_on_front && is_home() ) || ( 'page' === $show_on_front && is_front_page() ) ) {
29
-			return;
30
-		}
31
-
32
-		if ( function_exists( 'woocommerce_breadcrumb' ) ) {
33
-			ob_start();
34
-
35
-			woocommerce_breadcrumb(
36
-				array(
37
-					'wrap_before' => '<div class="breadcrumbs-container breadcrumbs-woocommerce"><div class="container"><div class="row"><div class="col-xs-12">',
38
-					'wrap_after'  => '</div></div></div></div>',
39
-					'before'      => '<span>',
40
-					'after'       => '</span>',
41
-				)
42
-			);
43
-
44
-			$output = ob_get_clean();
45
-		} elseif ( function_exists( 'yoast_breadcrumb' ) ) {
46
-			$output = yoast_breadcrumb( null, null, false );
47
-			$output = '<div class="breadcrumbs-container breadcrumbs-yoast"><div class="container"><div class="row"><div class="col-xs-12">' . $output . '</div></div></div></div>';
48
-		}
49
-
50
-		$output = apply_filters( 'lsx_breadcrumbs', $output );
51
-
52
-		echo wp_kses_post( $output );
53
-	}
15
+     /**
16
+      * Breadcrumbs.
17
+      *
18
+      * @package    lsx
19
+      * @subpackage template-tags
20
+      */
21
+     function lsx_breadcrumbs() {
22
+          if ( ! function_exists( 'yoast_breadcrumb' ) && ! function_exists( 'woocommerce_breadcrumb' ) ) {
23
+               return null;
24
+          }
25
+
26
+          $show_on_front = get_option( 'show_on_front' );
27
+
28
+          if ( ( 'posts' === $show_on_front && is_home() ) || ( 'page' === $show_on_front && is_front_page() ) ) {
29
+               return;
30
+          }
31
+
32
+          if ( function_exists( 'woocommerce_breadcrumb' ) ) {
33
+               ob_start();
34
+
35
+               woocommerce_breadcrumb(
36
+                    array(
37
+                         'wrap_before' => '<div class="breadcrumbs-container breadcrumbs-woocommerce"><div class="container"><div class="row"><div class="col-xs-12">',
38
+                         'wrap_after'  => '</div></div></div></div>',
39
+                         'before'      => '<span>',
40
+                         'after'       => '</span>',
41
+                    )
42
+               );
43
+
44
+               $output = ob_get_clean();
45
+          } elseif ( function_exists( 'yoast_breadcrumb' ) ) {
46
+               $output = yoast_breadcrumb( null, null, false );
47
+               $output = '<div class="breadcrumbs-container breadcrumbs-yoast"><div class="container"><div class="row"><div class="col-xs-12">' . $output . '</div></div></div></div>';
48
+          }
49
+
50
+          $output = apply_filters( 'lsx_breadcrumbs', $output );
51
+
52
+          echo wp_kses_post( $output );
53
+     }
54 54
 
55 55
 endif;
56 56
 
@@ -60,16 +60,16 @@  discard block
 block discarded – undo
60 60
 
61 61
 if ( ! function_exists( 'lsx_breadcrumbs_wpseo_seperator_filter' ) ) :
62 62
 
63
-	/**
64
-	 * Replaces the seperator.
65
-	 *
66
-	 * @package    lsx
67
-	 * @subpackage template-tags
68
-	 */
69
-	function lsx_breadcrumbs_wpseo_seperator_filter( $seperator ) {
70
-		$seperator = '<i class="fa fa-angle-right" aria-hidden="true"></i>';
71
-		return $seperator;
72
-	}
63
+     /**
64
+      * Replaces the seperator.
65
+      *
66
+      * @package    lsx
67
+      * @subpackage template-tags
68
+      */
69
+     function lsx_breadcrumbs_wpseo_seperator_filter( $seperator ) {
70
+          $seperator = '<i class="fa fa-angle-right" aria-hidden="true"></i>';
71
+          return $seperator;
72
+     }
73 73
 
74 74
 endif;
75 75
 
@@ -77,16 +77,16 @@  discard block
 block discarded – undo
77 77
 
78 78
 if ( ! function_exists( 'lsx_breadcrumbs_woocommerce_seperator_filter' ) ) :
79 79
 
80
-	/**
81
-	 * Replaces the seperator.
82
-	 *
83
-	 * @package    lsx
84
-	 * @subpackage template-tags
85
-	 */
86
-	function lsx_breadcrumbs_woocommerce_seperator_filter( $defaults ) {
87
-		$defaults['delimiter'] = '<i class="fa fa-angle-right" aria-hidden="true"></i>';
88
-		return $defaults;
89
-	}
80
+     /**
81
+      * Replaces the seperator.
82
+      *
83
+      * @package    lsx
84
+      * @subpackage template-tags
85
+      */
86
+     function lsx_breadcrumbs_woocommerce_seperator_filter( $defaults ) {
87
+          $defaults['delimiter'] = '<i class="fa fa-angle-right" aria-hidden="true"></i>';
88
+          return $defaults;
89
+     }
90 90
 
91 91
 endif;
92 92
 
@@ -94,33 +94,33 @@  discard block
 block discarded – undo
94 94
 
95 95
 if ( ! function_exists( 'lsx_site_title' ) ) :
96 96
 
97
-	/**
98
-	 * Displays logo when applicable.
99
-	 *
100
-	 * @package    lsx
101
-	 * @subpackage template-tags
102
-	 */
103
-	function lsx_site_title() {
104
-		?>
97
+     /**
98
+      * Displays logo when applicable.
99
+      *
100
+      * @package    lsx
101
+      * @subpackage template-tags
102
+      */
103
+     function lsx_site_title() {
104
+          ?>
105 105
 			<div class="site-branding">
106 106
 				<h1 class="site-title"><a title="<?php bloginfo( 'name' ); ?>" href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
107 107
 				<p class="site-description"><?php bloginfo( 'description' ); ?></p>
108 108
 			</div>
109 109
 		<?php
110
-	}
110
+     }
111 111
 
112 112
 endif;
113 113
 
114 114
 if ( ! function_exists( 'lsx_post_meta_list_top' ) ) :
115 115
 
116
-	/**
117
-	 * Add customizable post meta (post list - above title).
118
-	 *
119
-	 * @package    lsx
120
-	 * @subpackage template-tags
121
-	 */
122
-	function lsx_post_meta_list_top() {
123
-		?>
116
+     /**
117
+      * Add customizable post meta (post list - above title).
118
+      *
119
+      * @package    lsx
120
+      * @subpackage template-tags
121
+      */
122
+     function lsx_post_meta_list_top() {
123
+          ?>
124 124
 		<div class="post-meta post-meta-top">
125 125
 			<?php //lsx_post_meta_avatar(); ?>
126 126
 			<?php lsx_post_meta_author(); ?>
@@ -128,26 +128,26 @@  discard block
 block discarded – undo
128 128
 			<div class="clearfix"></div>
129 129
 		</div>
130 130
 		<?php
131
-	}
131
+     }
132 132
 
133 133
 endif;
134 134
 
135 135
 if ( ! function_exists( 'lsx_post_meta_single_top' ) ) :
136 136
 
137
-	/**
138
-	 * Add customizable post meta (single post - above title).
139
-	 *
140
-	 * @package    lsx
141
-	 * @subpackage template-tags
142
-	 */
143
-	function lsx_post_meta_single_top() {
144
-		?>
137
+     /**
138
+      * Add customizable post meta (single post - above title).
139
+      *
140
+      * @package    lsx
141
+      * @subpackage template-tags
142
+      */
143
+     function lsx_post_meta_single_top() {
144
+          ?>
145 145
 		<div class="post-meta post-meta-top">
146 146
 			<?php lsx_post_meta_top(); ?>
147 147
 			<div class="clearfix"></div>
148 148
 		</div>
149 149
 		<?php
150
-	}
150
+     }
151 151
 
152 152
 endif;
153 153
 
@@ -158,148 +158,148 @@  discard block
 block discarded – undo
158 158
 
159 159
 if ( ! function_exists( 'lsx_post_meta_single_bottom' ) ) :
160 160
 
161
-	/**
162
-	 * Add customizable post meta (single post - below title).
163
-	 *
164
-	 * @package    lsx
165
-	 * @subpackage template-tags
166
-	 */
167
-	function lsx_post_meta_single_bottom() {
168
-		?>
161
+     /**
162
+      * Add customizable post meta (single post - below title).
163
+      *
164
+      * @package    lsx
165
+      * @subpackage template-tags
166
+      */
167
+     function lsx_post_meta_single_bottom() {
168
+          ?>
169 169
 		<div class="post-meta">
170 170
 			<?php lsx_post_meta_category(); ?>
171 171
 			<div class="clearfix"></div>
172 172
 		</div>
173 173
 		<?php
174
-	}
174
+     }
175 175
 
176 176
 endif;
177 177
 
178 178
 if ( ! function_exists( 'lsx_post_meta_avatar' ) ) :
179 179
 
180
-	/**
181
-	 * Add customizable post meta: author's avatar.
182
-	 *
183
-	 * @package    lsx
184
-	 * @subpackage template-tags
185
-	 */
186
-	function lsx_post_meta_avatar() {
187
-		$author        = get_the_author();
188
-		$author_id     = get_the_author_meta( 'ID' );
189
-		$author_avatar = get_avatar( $author_id, 80 );
190
-		$author_url    = get_author_posts_url( $author_id );
191
-
192
-		printf(
193
-			'<a href="%1$s" class="post-meta-avatar">%2$s</a>',
194
-			esc_url( $author_url ),
195
-			wp_kses_post( $author_avatar )
196
-		);
197
-	}
180
+     /**
181
+      * Add customizable post meta: author's avatar.
182
+      *
183
+      * @package    lsx
184
+      * @subpackage template-tags
185
+      */
186
+     function lsx_post_meta_avatar() {
187
+          $author        = get_the_author();
188
+          $author_id     = get_the_author_meta( 'ID' );
189
+          $author_avatar = get_avatar( $author_id, 80 );
190
+          $author_url    = get_author_posts_url( $author_id );
191
+
192
+          printf(
193
+               '<a href="%1$s" class="post-meta-avatar">%2$s</a>',
194
+               esc_url( $author_url ),
195
+               wp_kses_post( $author_avatar )
196
+          );
197
+     }
198 198
 
199 199
 endif;
200 200
 
201 201
 if ( ! function_exists( 'lsx_post_meta_date' ) ) :
202 202
 
203
-	/**
204
-	 * Add customizable post meta: post date.
205
-	 *
206
-	 * @package    lsx
207
-	 * @subpackage template-tags
208
-	 */
209
-	function lsx_post_meta_date() {
210
-		$time_string = '<time class="entry-date published updated" datetime="%1$s">%2$s</time>';
211
-
212
-		$time_string = sprintf(
213
-			$time_string,
214
-			esc_attr( get_the_date( 'c' ) ),
215
-			get_the_date(),
216
-			esc_attr( get_the_modified_date( 'c' ) ),
217
-			get_the_modified_date()
218
-		);
219
-
220
-		printf(
221
-			'<span class="post-meta-time updated"><a href="%1$s" rel="bookmark">%2$s</a></span>',
222
-			esc_url( get_permalink() ),
223
-			wp_kses_post( $time_string )
224
-		);
225
-	}
203
+     /**
204
+      * Add customizable post meta: post date.
205
+      *
206
+      * @package    lsx
207
+      * @subpackage template-tags
208
+      */
209
+     function lsx_post_meta_date() {
210
+          $time_string = '<time class="entry-date published updated" datetime="%1$s">%2$s</time>';
211
+
212
+          $time_string = sprintf(
213
+               $time_string,
214
+               esc_attr( get_the_date( 'c' ) ),
215
+               get_the_date(),
216
+               esc_attr( get_the_modified_date( 'c' ) ),
217
+               get_the_modified_date()
218
+          );
219
+
220
+          printf(
221
+               '<span class="post-meta-time updated"><a href="%1$s" rel="bookmark">%2$s</a></span>',
222
+               esc_url( get_permalink() ),
223
+               wp_kses_post( $time_string )
224
+          );
225
+     }
226 226
 
227 227
 endif;
228 228
 
229 229
 if ( ! function_exists( 'lsx_post_meta_author' ) ) :
230 230
 
231
-	/**
232
-	 * Add customizable post meta: post author.
233
-	 *
234
-	 * @package    lsx
235
-	 * @subpackage template-tags
236
-	 */
237
-	function lsx_post_meta_author() {
238
-		$author     = get_the_author();
239
-		$author_url = get_author_posts_url( get_the_author_meta( 'ID' ) );
240
-
241
-		if ( empty( $author ) ) {
242
-			global $post;
243
-
244
-			$author     = get_user_by( 'ID', $post->post_author );
245
-			$author     = $author->display_name;
246
-			$author_url = get_author_posts_url( $post->post_author );
247
-		}
248
-
249
-		printf(
250
-			'<span class="vcard post-meta-author"><span>%1$s</span> <span class="fn"><a href="%2$s">%3$s</a>, </span></span>',
251
-			esc_html__( 'By ', 'lsx' ),
252
-			esc_url( $author_url ),
253
-			esc_html( $author )
254
-		);
255
-	}
231
+     /**
232
+      * Add customizable post meta: post author.
233
+      *
234
+      * @package    lsx
235
+      * @subpackage template-tags
236
+      */
237
+     function lsx_post_meta_author() {
238
+          $author     = get_the_author();
239
+          $author_url = get_author_posts_url( get_the_author_meta( 'ID' ) );
240
+
241
+          if ( empty( $author ) ) {
242
+               global $post;
243
+
244
+               $author     = get_user_by( 'ID', $post->post_author );
245
+               $author     = $author->display_name;
246
+               $author_url = get_author_posts_url( $post->post_author );
247
+          }
248
+
249
+          printf(
250
+               '<span class="vcard post-meta-author"><span>%1$s</span> <span class="fn"><a href="%2$s">%3$s</a>, </span></span>',
251
+               esc_html__( 'By ', 'lsx' ),
252
+               esc_url( $author_url ),
253
+               esc_html( $author )
254
+          );
255
+     }
256 256
 
257 257
 endif;
258 258
 
259 259
 if ( ! function_exists( 'lsx_post_meta_category' ) ) :
260 260
 
261
-	/**
262
-	 * Add customizable post meta: post category(ies).
263
-	 *
264
-	 * @package    lsx
265
-	 * @subpackage template-tags
266
-	 */
267
-	function lsx_post_meta_category() {
268
-		$post_categories = wp_get_post_categories( get_the_ID() );
269
-		$cats            = array();
270
-
271
-		foreach ( $post_categories as $c ) {
272
-			$cat = get_category( $c );
273
-			/* Translators: %s: category name */
274
-			$cats[] = '<a href="' . esc_url( get_category_link( $cat->term_id ) ) . '" title="' . sprintf( esc_html__( 'View all posts in %s', 'lsx' ), $cat->name ) . '">' . $cat->name . '</a>';
275
-		}
276
-
277
-		if ( ! empty( $cats ) ) {
278
-			?>
261
+     /**
262
+      * Add customizable post meta: post category(ies).
263
+      *
264
+      * @package    lsx
265
+      * @subpackage template-tags
266
+      */
267
+     function lsx_post_meta_category() {
268
+          $post_categories = wp_get_post_categories( get_the_ID() );
269
+          $cats            = array();
270
+
271
+          foreach ( $post_categories as $c ) {
272
+               $cat = get_category( $c );
273
+               /* Translators: %s: category name */
274
+               $cats[] = '<a href="' . esc_url( get_category_link( $cat->term_id ) ) . '" title="' . sprintf( esc_html__( 'View all posts in %s', 'lsx' ), $cat->name ) . '">' . $cat->name . '</a>';
275
+          }
276
+
277
+          if ( ! empty( $cats ) ) {
278
+               ?>
279 279
 			<span class="post-meta-categories"><span><?php esc_html_e( 'Posted in: ', 'lsx' ); ?></span> <?php echo wp_kses_post( implode( ', ', $cats ) ); ?></span>
280 280
 			<?php
281
-		}
282
-	}
281
+          }
282
+     }
283 283
 
284 284
 endif;
285 285
 
286 286
 if ( ! function_exists( 'lsx_post_tags' ) ) :
287 287
 
288
-	/**
289
-	 * Add customizable post meta: post tag(s).
290
-	 *
291
-	 * @package    lsx
292
-	 * @subpackage template-tags
293
-	 */
294
-	function lsx_post_tags() {
295
-		if ( has_tag() ) :
296
-			?>
288
+     /**
289
+      * Add customizable post meta: post tag(s).
290
+      *
291
+      * @package    lsx
292
+      * @subpackage template-tags
293
+      */
294
+     function lsx_post_tags() {
295
+          if ( has_tag() ) :
296
+               ?>
297 297
 			<div class="post-tags">
298 298
 				<span><?php echo esc_html__( 'Tags: ', 'lsx' ); ?></span><?php echo wp_kses_post( get_the_tag_list( '' ) ); ?>
299 299
 			</div>
300 300
 			<?php
301
-		endif;
302
-	}
301
+          endif;
302
+     }
303 303
 
304 304
 endif;
305 305
 
@@ -307,16 +307,16 @@  discard block
 block discarded – undo
307 307
 
308 308
 if ( ! function_exists( 'lsx_sharing_output' ) ) :
309 309
 
310
-	/**
311
-	 * Display sharing buttons.
312
-	 *
313
-	 * @package    lsx
314
-	 * @subpackage template-tags
315
-	 */
316
-	function lsx_sharing_output() {
317
-		global $lsx_sharing;
318
-		echo wp_kses_post( $lsx_sharing->sharing_buttons() );
319
-	}
310
+     /**
311
+      * Display sharing buttons.
312
+      *
313
+      * @package    lsx
314
+      * @subpackage template-tags
315
+      */
316
+     function lsx_sharing_output() {
317
+          global $lsx_sharing;
318
+          echo wp_kses_post( $lsx_sharing->sharing_buttons() );
319
+     }
320 320
 
321 321
 endif;
322 322
 
@@ -324,107 +324,107 @@  discard block
 block discarded – undo
324 324
 
325 325
 if ( ! function_exists( 'lsx_translate_format_to_fontawesome' ) ) :
326 326
 
327
-	/**
328
-	 * Translate post format to Font Awesome class.
329
-	 *
330
-	 * @package    lsx
331
-	 * @subpackage template-tags
332
-	 */
333
-	function lsx_translate_format_to_fontawesome( $format ) {
334
-		switch ( $format ) {
335
-			case 'image':
336
-				$format = 'camera';
337
-				break;
338
-			case 'video':
339
-				$format = 'play';
340
-				break;
341
-			case 'gallery':
342
-				$format = 'picture-o';
343
-				break;
344
-			case 'audio':
345
-				$format = 'volume-up';
346
-				break;
347
-			case 'link':
348
-				$format = 'link';
349
-				break;
350
-			case 'quote':
351
-				$format = 'quote-right';
352
-				break;
353
-			case 'aside':
354
-				$format = 'circle-o';
355
-				break;
356
-			default:
357
-				$format = 'file-text-o';
358
-				break;
359
-		}
360
-
361
-		return $format;
362
-	}
327
+     /**
328
+      * Translate post format to Font Awesome class.
329
+      *
330
+      * @package    lsx
331
+      * @subpackage template-tags
332
+      */
333
+     function lsx_translate_format_to_fontawesome( $format ) {
334
+          switch ( $format ) {
335
+               case 'image':
336
+                    $format = 'camera';
337
+                    break;
338
+               case 'video':
339
+                    $format = 'play';
340
+                    break;
341
+               case 'gallery':
342
+                    $format = 'picture-o';
343
+                    break;
344
+               case 'audio':
345
+                    $format = 'volume-up';
346
+                    break;
347
+               case 'link':
348
+                    $format = 'link';
349
+                    break;
350
+               case 'quote':
351
+                    $format = 'quote-right';
352
+                    break;
353
+               case 'aside':
354
+                    $format = 'circle-o';
355
+                    break;
356
+               default:
357
+                    $format = 'file-text-o';
358
+                    break;
359
+          }
360
+
361
+          return $format;
362
+     }
363 363
 
364 364
 endif;
365 365
 
366 366
 if ( ! function_exists( 'lsx_paging_nav' ) ) :
367 367
 
368
-	/**
369
-	 * Display navigation to next/previous set of posts when applicable.
370
-	 *
371
-	 * @package    lsx
372
-	 * @subpackage template-tags
373
-	 */
374
-	function lsx_paging_nav() {
375
-		global $wp_query;
376
-
377
-		if ( $wp_query->max_num_pages < 2 ) {
378
-			return;
379
-		}
380
-
381
-		if ( true === apply_filters( 'lsx_paging_nav_disable', false ) ) {
382
-			return true;
383
-		} elseif ( current_theme_supports( 'infinite-scroll' ) && class_exists( 'The_Neverending_Home_Page' ) ) {
384
-			return true;
385
-		} else {
386
-			$html  = '';
387
-			$html .= '<div class="lsx-pagination-wrapper">' . PHP_EOL;
388
-			$html .= '<div class="lsx-breaker"></div>' . PHP_EOL;
389
-			$html .= '<div class="lsx-pagination">' . PHP_EOL;
390
-			$html .= paginate_links(
391
-				array(
392
-					'base'      => str_replace( 999999999, '%#%', esc_url( get_pagenum_link( 999999999 ) ) ),
393
-					'format'    => '?paged=%#%',
394
-					'total'     => $wp_query->max_num_pages,
395
-					'current'   => max( 1, intval( get_query_var( 'paged' ) ) ),
396
-					'prev_text' => '<span class="meta-nav">&larr;</span> ' . esc_html__( 'Previous', 'lsx' ),
397
-					'next_text' => esc_html__( 'Next', 'lsx' ) . ' <span class="meta-nav">&rarr;</span>',
398
-				)
399
-			);
400
-			$html .= '</div>' . PHP_EOL;
401
-			$html .= '</div>' . PHP_EOL;
402
-
403
-			echo wp_kses_post( $html );
404
-		}
405
-	}
368
+     /**
369
+      * Display navigation to next/previous set of posts when applicable.
370
+      *
371
+      * @package    lsx
372
+      * @subpackage template-tags
373
+      */
374
+     function lsx_paging_nav() {
375
+          global $wp_query;
376
+
377
+          if ( $wp_query->max_num_pages < 2 ) {
378
+               return;
379
+          }
380
+
381
+          if ( true === apply_filters( 'lsx_paging_nav_disable', false ) ) {
382
+               return true;
383
+          } elseif ( current_theme_supports( 'infinite-scroll' ) && class_exists( 'The_Neverending_Home_Page' ) ) {
384
+               return true;
385
+          } else {
386
+               $html  = '';
387
+               $html .= '<div class="lsx-pagination-wrapper">' . PHP_EOL;
388
+               $html .= '<div class="lsx-breaker"></div>' . PHP_EOL;
389
+               $html .= '<div class="lsx-pagination">' . PHP_EOL;
390
+               $html .= paginate_links(
391
+                    array(
392
+                         'base'      => str_replace( 999999999, '%#%', esc_url( get_pagenum_link( 999999999 ) ) ),
393
+                         'format'    => '?paged=%#%',
394
+                         'total'     => $wp_query->max_num_pages,
395
+                         'current'   => max( 1, intval( get_query_var( 'paged' ) ) ),
396
+                         'prev_text' => '<span class="meta-nav">&larr;</span> ' . esc_html__( 'Previous', 'lsx' ),
397
+                         'next_text' => esc_html__( 'Next', 'lsx' ) . ' <span class="meta-nav">&rarr;</span>',
398
+                    )
399
+               );
400
+               $html .= '</div>' . PHP_EOL;
401
+               $html .= '</div>' . PHP_EOL;
402
+
403
+               echo wp_kses_post( $html );
404
+          }
405
+     }
406 406
 
407 407
 endif;
408 408
 
409 409
 if ( ! function_exists( 'lsx_post_nav' ) ) :
410 410
 
411
-	/**
412
-	 * Display navigation to next/previous post when applicable.
413
-	 *
414
-	 * @package    lsx
415
-	 * @subpackage template-tags
416
-	 */
417
-	function lsx_post_nav() {
418
-		$previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true );
419
-		$next     = get_adjacent_post( false, '', false );
420
-
421
-		if ( ! $next && ! $previous ) {
422
-			return;
423
-		}
424
-
425
-		$default_size = 'sm';
426
-		$size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
427
-		?>
411
+     /**
412
+      * Display navigation to next/previous post when applicable.
413
+      *
414
+      * @package    lsx
415
+      * @subpackage template-tags
416
+      */
417
+     function lsx_post_nav() {
418
+          $previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true );
419
+          $next     = get_adjacent_post( false, '', false );
420
+
421
+          if ( ! $next && ! $previous ) {
422
+               return;
423
+          }
424
+
425
+          $default_size = 'sm';
426
+          $size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
427
+          ?>
428 428
 		<nav class="navigation post-navigation" role="navigation">
429 429
 			<div class="lsx-breaker"></div>
430 430
 			<div class="nav-links pager row">
@@ -437,47 +437,47 @@  discard block
 block discarded – undo
437 437
 			</div><!-- .nav-links -->
438 438
 		</nav><!-- .navigation -->
439 439
 		<?php
440
-	}
440
+     }
441 441
 
442 442
 endif;
443 443
 
444 444
 if ( ! function_exists( 'lsx_site_identity' ) ) :
445 445
 
446
-	/**
447
-	 * Outputs either the Site Title or the Site Logo.
448
-	 *
449
-	 * @package    lsx
450
-	 * @subpackage template-tags
451
-	 */
452
-	function lsx_site_identity() {
453
-		if ( function_exists( 'has_custom_logo' ) && has_custom_logo() ) {
454
-			the_custom_logo();
455
-		} else {
456
-			if ( get_theme_mod( 'site_logo_header_text', 1 ) ) {
457
-				lsx_site_title();
458
-			}
459
-		}
460
-	}
446
+     /**
447
+      * Outputs either the Site Title or the Site Logo.
448
+      *
449
+      * @package    lsx
450
+      * @subpackage template-tags
451
+      */
452
+     function lsx_site_identity() {
453
+          if ( function_exists( 'has_custom_logo' ) && has_custom_logo() ) {
454
+               the_custom_logo();
455
+          } else {
456
+               if ( get_theme_mod( 'site_logo_header_text', 1 ) ) {
457
+                    lsx_site_title();
458
+               }
459
+          }
460
+     }
461 461
 
462 462
 endif;
463 463
 
464 464
 if ( ! function_exists( 'lsx_navbar_header' ) ) :
465
-	/**
466
-	 * Outputs the Nav Menu.
467
-	 *
468
-	 * @package    lsx
469
-	 * @subpackage template-tags
470
-	 */
471
-	function lsx_navbar_header() {
472
-		$mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' );
473
-		if ( 'hamburger' === $mobile_header_layout ) {
474
-			?>
465
+     /**
466
+      * Outputs the Nav Menu.
467
+      *
468
+      * @package    lsx
469
+      * @subpackage template-tags
470
+      */
471
+     function lsx_navbar_header() {
472
+          $mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' );
473
+          if ( 'hamburger' === $mobile_header_layout ) {
474
+               ?>
475 475
 			<div class="navbar-header" itemscope itemtype="http://schema.org/WebPage">
476 476
 				<?php
477
-				lsx_header_search_form();
478
-				lsx_site_identity();
479
-				if ( has_nav_menu( 'primary' ) ) :
480
-					?>
477
+                    lsx_header_search_form();
478
+                    lsx_site_identity();
479
+                    if ( has_nav_menu( 'primary' ) ) :
480
+                         ?>
481 481
 					<div class="wrapper-toggle" data-toggle="collapse" data-target=".primary-navbar">
482 482
 						<button type="button" class="navbar-toggle">
483 483
 							<span class="sr-only"><?php esc_html_e( 'Toggle navigation', 'lsx' ); ?></span>
@@ -487,16 +487,16 @@  discard block
 block discarded – undo
487 487
 						</button>
488 488
 					</div>
489 489
 					<?php
490
-				endif;
491
-				?>
490
+                    endif;
491
+                    ?>
492 492
 			</div>
493 493
 			<?php
494
-		} else {
495
-			?>
494
+          } else {
495
+               ?>
496 496
 			<div class="navbar-header" itemscope itemtype="http://schema.org/WebPage">
497 497
 				<?php
498
-				if ( has_nav_menu( 'primary' ) ) :
499
-					?>
498
+                    if ( has_nav_menu( 'primary' ) ) :
499
+                         ?>
500 500
 					<div class="wrapper-toggle" data-toggle="collapse" data-target=".primary-navbar">
501 501
 						<button type="button" class="navbar-toggle">
502 502
 							<span class="sr-only"><?php esc_html_e( 'Toggle navigation', 'lsx' ); ?></span>
@@ -508,195 +508,195 @@  discard block
 block discarded – undo
508 508
 						<span class="mobile-menu-title"><?php esc_html_e( 'Menu', 'lsx' ); ?></span>
509 509
 					</div>
510 510
 					<?php
511
-				endif;
511
+                    endif;
512 512
 
513
-				lsx_site_identity();
514
-				?>
513
+                    lsx_site_identity();
514
+                    ?>
515 515
 			</div>
516 516
 			<?php
517
-		}
518
-	}
517
+          }
518
+     }
519 519
 
520 520
 endif;
521 521
 
522 522
 add_action( 'lsx_nav_before', 'lsx_navbar_header' );
523 523
 
524 524
 if ( ! function_exists( 'lsx_nav_menu' ) ) :
525
-	/**
526
-	 * Outputs the Nav Menu.
527
-	 *
528
-	 * @package    lsx
529
-	 * @subpackage template-tags
530
-	 */
531
-	function lsx_nav_menu() {
532
-		if ( has_nav_menu( 'primary' ) ) :
533
-			?>
525
+     /**
526
+      * Outputs the Nav Menu.
527
+      *
528
+      * @package    lsx
529
+      * @subpackage template-tags
530
+      */
531
+     function lsx_nav_menu() {
532
+          if ( has_nav_menu( 'primary' ) ) :
533
+               ?>
534 534
 			<nav class="primary-navbar collapse navbar-collapse">
535 535
 				<?php
536
-					wp_nav_menu(
537
-						array(
538
-							'theme_location' => 'primary',
539
-							'depth'          => 3,
540
-							'container'      => false,
541
-							'menu_class'     => 'nav navbar-nav',
542
-							'walker'         => new LSX_Bootstrap_Navwalker(),
543
-						)
544
-					);
545
-				?>
536
+                         wp_nav_menu(
537
+                              array(
538
+                                   'theme_location' => 'primary',
539
+                                   'depth'          => 3,
540
+                                   'container'      => false,
541
+                                   'menu_class'     => 'nav navbar-nav',
542
+                                   'walker'         => new LSX_Bootstrap_Navwalker(),
543
+                              )
544
+                         );
545
+                    ?>
546 546
 			</nav>
547 547
 			<?php
548
-		endif;
549
-	}
548
+          endif;
549
+     }
550 550
 endif;
551 551
 
552 552
 if ( ! function_exists( 'lsx_sitemap_loops' ) ) {
553
-	/**
554
-	 * Outputs the loops on the sitemap
555
-	 *
556
-	 * @package    lsx
557
-	 * @subpackage template-tags
558
-	 */
559
-	function lsx_sitemap_loops() {
560
-		$sitemap_loops  = array(
561
-			'page'     => array(
562
-				'type'      => 'post_type',
563
-				'label'     => __( 'Pages', 'lsx' ),
564
-				'heirarchy' => true,
565
-			),
566
-			'post'     => array(
567
-				'type'  => 'post_type',
568
-				'label' => __( 'Posts', 'lsx' ),
569
-			),
570
-			'category' => array(
571
-				'type'      => 'taxonomy',
572
-				'label'     => __( 'Categories', 'lsx' ),
573
-				'heirarchy' => true,
574
-			),
575
-		);
576
-		$post_type_args = array(
577
-			'public'   => true,
578
-			'_builtin' => false,
579
-			'show_ui'  => true,
580
-		);
581
-		$post_types     = get_post_types( $post_type_args, 'objects' );
582
-		if ( ! empty( $post_types ) ) {
583
-			foreach ( $post_types as $post_type_key => $post_type_obj ) {
584
-				$sitemap_loops[ $post_type_key ] = array(
585
-					'type'  => 'post_type',
586
-					'label' => $post_type_obj->label,
587
-				);
588
-			}
589
-		}
590
-		$taxonomy_args = array(
591
-			'public'   => true,
592
-			'_builtin' => false,
593
-			'show_ui'  => true,
594
-		);
595
-		$taxonomies    = get_taxonomies( $taxonomy_args, 'objects' );
596
-		if ( ! empty( $taxonomies ) ) {
597
-			foreach ( $taxonomies as $tax_key => $tax_obj ) {
598
-				$sitemap_loops[ $tax_key ] = array(
599
-					'type'  => 'taxonomy',
600
-					'label' => $tax_obj->label,
601
-				);
602
-			}
603
-		}
604
-		$sitemap_loops = apply_filters( 'lsx_sitemap_loops_list', $sitemap_loops );
605
-		foreach ( $sitemap_loops as $sitemap_key => $sitemap_values ) {
606
-			if ( 'post_type' === $sitemap_values['type'] ) {
607
-				if ( isset( $sitemap_values['heirarchy'] ) && true === $sitemap_values['heirarchy'] ) {
608
-					lsx_sitemap_pages( $sitemap_key, $sitemap_values['label'] );
609
-				} else {
610
-					lsx_sitemap_custom_post_type( $sitemap_key, $sitemap_values['label'] );
611
-				}
612
-			} else {
613
-				if ( isset( $sitemap_values['heirarchy'] ) && true === $sitemap_values['heirarchy'] ) {
614
-					lsx_sitemap_taxonomy( $sitemap_key, $sitemap_values['label'], true );
615
-				} else {
616
-					lsx_sitemap_taxonomy( $sitemap_key, $sitemap_values['label'], false );
617
-				}
618
-			}
619
-		}
620
-	}
553
+     /**
554
+      * Outputs the loops on the sitemap
555
+      *
556
+      * @package    lsx
557
+      * @subpackage template-tags
558
+      */
559
+     function lsx_sitemap_loops() {
560
+          $sitemap_loops  = array(
561
+               'page'     => array(
562
+                    'type'      => 'post_type',
563
+                    'label'     => __( 'Pages', 'lsx' ),
564
+                    'heirarchy' => true,
565
+               ),
566
+               'post'     => array(
567
+                    'type'  => 'post_type',
568
+                    'label' => __( 'Posts', 'lsx' ),
569
+               ),
570
+               'category' => array(
571
+                    'type'      => 'taxonomy',
572
+                    'label'     => __( 'Categories', 'lsx' ),
573
+                    'heirarchy' => true,
574
+               ),
575
+          );
576
+          $post_type_args = array(
577
+               'public'   => true,
578
+               '_builtin' => false,
579
+               'show_ui'  => true,
580
+          );
581
+          $post_types     = get_post_types( $post_type_args, 'objects' );
582
+          if ( ! empty( $post_types ) ) {
583
+               foreach ( $post_types as $post_type_key => $post_type_obj ) {
584
+                    $sitemap_loops[ $post_type_key ] = array(
585
+                         'type'  => 'post_type',
586
+                         'label' => $post_type_obj->label,
587
+                    );
588
+               }
589
+          }
590
+          $taxonomy_args = array(
591
+               'public'   => true,
592
+               '_builtin' => false,
593
+               'show_ui'  => true,
594
+          );
595
+          $taxonomies    = get_taxonomies( $taxonomy_args, 'objects' );
596
+          if ( ! empty( $taxonomies ) ) {
597
+               foreach ( $taxonomies as $tax_key => $tax_obj ) {
598
+                    $sitemap_loops[ $tax_key ] = array(
599
+                         'type'  => 'taxonomy',
600
+                         'label' => $tax_obj->label,
601
+                    );
602
+               }
603
+          }
604
+          $sitemap_loops = apply_filters( 'lsx_sitemap_loops_list', $sitemap_loops );
605
+          foreach ( $sitemap_loops as $sitemap_key => $sitemap_values ) {
606
+               if ( 'post_type' === $sitemap_values['type'] ) {
607
+                    if ( isset( $sitemap_values['heirarchy'] ) && true === $sitemap_values['heirarchy'] ) {
608
+                         lsx_sitemap_pages( $sitemap_key, $sitemap_values['label'] );
609
+                    } else {
610
+                         lsx_sitemap_custom_post_type( $sitemap_key, $sitemap_values['label'] );
611
+                    }
612
+               } else {
613
+                    if ( isset( $sitemap_values['heirarchy'] ) && true === $sitemap_values['heirarchy'] ) {
614
+                         lsx_sitemap_taxonomy( $sitemap_key, $sitemap_values['label'], true );
615
+                    } else {
616
+                         lsx_sitemap_taxonomy( $sitemap_key, $sitemap_values['label'], false );
617
+                    }
618
+               }
619
+          }
620
+     }
621 621
 }
622 622
 
623 623
 if ( ! function_exists( 'lsx_sitemap_pages' ) ) :
624 624
 
625
-	/**
626
-	 * Outputs Pages for the Sitemap Template.
627
-	 *
628
-	 * @package    lsx
629
-	 * @subpackage template-tags
630
-	 */
631
-	function lsx_sitemap_pages( $forced_type = '', $label = '' ) {
632
-		$page_args = array(
633
-			'depth'        => 3,
634
-			'title_li'     => '',
635
-			'echo'         => 1,
636
-			'sort_column'  => 'menu_order, post_title',
637
-			'post_type'    => $forced_type,
638
-			'item_spacing' => 'preserve',
639
-		);
640
-		echo '<h2>' . esc_html( $label ) . '</h2>';
641
-		echo '<ul>';
642
-		wp_list_pages( $page_args );
643
-		echo '</ul>';
644
-	}
625
+     /**
626
+      * Outputs Pages for the Sitemap Template.
627
+      *
628
+      * @package    lsx
629
+      * @subpackage template-tags
630
+      */
631
+     function lsx_sitemap_pages( $forced_type = '', $label = '' ) {
632
+          $page_args = array(
633
+               'depth'        => 3,
634
+               'title_li'     => '',
635
+               'echo'         => 1,
636
+               'sort_column'  => 'menu_order, post_title',
637
+               'post_type'    => $forced_type,
638
+               'item_spacing' => 'preserve',
639
+          );
640
+          echo '<h2>' . esc_html( $label ) . '</h2>';
641
+          echo '<ul>';
642
+          wp_list_pages( $page_args );
643
+          echo '</ul>';
644
+     }
645 645
 
646 646
 endif;
647 647
 
648 648
 if ( ! function_exists( 'lsx_sitemap_custom_post_type' ) ) :
649 649
 
650
-	/**
651
-	 * Outputs a custom post type section.
652
-	 *
653
-	 * @package    lsx
654
-	 * @subpackage template-tags
655
-	 */
656
-	function lsx_sitemap_custom_post_type( $forced_type = '', $label = '' ) {
657
-		if ( '' !== $forced_type ) {
658
-			$post_types = array( $forced_type );
659
-		} else {
660
-			$args       = array(
661
-				'public'   => true,
662
-				'_builtin' => false,
663
-			);
664
-			$post_types = get_post_types( $args, 'names' );
665
-		}
666
-
667
-		foreach ( $post_types as $post_type ) {
668
-			$post_type_args = array(
669
-				'post_type'      => 'page',
670
-				'posts_per_page' => 99,
671
-				'post_status'    => 'publish',
672
-				'post_type'      => $post_type,
673
-			);
674
-
675
-			$post_type_items  = new WP_Query( $post_type_args );
676
-			$post_type_object = get_post_type_object( $post_type );
677
-
678
-			if ( '' !== $label ) {
679
-				$title = $label;
680
-			} elseif ( ! empty( $post_type_object ) ) {
681
-				$title = $post_type_object->labels->name;
682
-			} else {
683
-				$title = ucwords( $post_type );
684
-			}
685
-
686
-			if ( $post_type_items->have_posts() ) {
687
-				echo '<h2>' . esc_html( $title ) . '</h2>';
688
-				echo '<ul>';
689
-
690
-				while ( $post_type_items->have_posts() ) {
691
-					$post_type_items->the_post();
692
-					echo '<li class="' . esc_attr( get_post_type() ) . '_item ' . esc_attr( get_post_type() ) . '-item-' . esc_attr( get_the_ID() ) . '"><a href="' . esc_url( get_permalink() ) . '" title="">' . get_the_title() . '</a></li>';
693
-				}
694
-
695
-				echo '</ul>';
696
-				wp_reset_postdata();
697
-			}
698
-		}
699
-	}
650
+     /**
651
+      * Outputs a custom post type section.
652
+      *
653
+      * @package    lsx
654
+      * @subpackage template-tags
655
+      */
656
+     function lsx_sitemap_custom_post_type( $forced_type = '', $label = '' ) {
657
+          if ( '' !== $forced_type ) {
658
+               $post_types = array( $forced_type );
659
+          } else {
660
+               $args       = array(
661
+                    'public'   => true,
662
+                    '_builtin' => false,
663
+               );
664
+               $post_types = get_post_types( $args, 'names' );
665
+          }
666
+
667
+          foreach ( $post_types as $post_type ) {
668
+               $post_type_args = array(
669
+                    'post_type'      => 'page',
670
+                    'posts_per_page' => 99,
671
+                    'post_status'    => 'publish',
672
+                    'post_type'      => $post_type,
673
+               );
674
+
675
+               $post_type_items  = new WP_Query( $post_type_args );
676
+               $post_type_object = get_post_type_object( $post_type );
677
+
678
+               if ( '' !== $label ) {
679
+                    $title = $label;
680
+               } elseif ( ! empty( $post_type_object ) ) {
681
+                    $title = $post_type_object->labels->name;
682
+               } else {
683
+                    $title = ucwords( $post_type );
684
+               }
685
+
686
+               if ( $post_type_items->have_posts() ) {
687
+                    echo '<h2>' . esc_html( $title ) . '</h2>';
688
+                    echo '<ul>';
689
+
690
+                    while ( $post_type_items->have_posts() ) {
691
+                         $post_type_items->the_post();
692
+                         echo '<li class="' . esc_attr( get_post_type() ) . '_item ' . esc_attr( get_post_type() ) . '-item-' . esc_attr( get_the_ID() ) . '"><a href="' . esc_url( get_permalink() ) . '" title="">' . get_the_title() . '</a></li>';
693
+                    }
694
+
695
+                    echo '</ul>';
696
+                    wp_reset_postdata();
697
+               }
698
+          }
699
+     }
700 700
 
701 701
 endif;
702 702
 
@@ -706,111 +706,111 @@  discard block
 block discarded – undo
706 706
  * @return void
707 707
  */
708 708
 function lsx_sitemap_taxonomy( $taxonomy = '', $label = '', $hierarchical = false ) {
709
-	if ( '' !== $taxonomy ) {
710
-
711
-		$tax_args   = array(
712
-			'echo'                => 0,
713
-			'depth'               => 0,
714
-			'hide_empty'          => 1,
715
-			'hide_title_if_empty' => false,
716
-			'hierarchical'        => $hierarchical,
717
-			'separator'           => '<br />',
718
-			'show_count'          => 0,
719
-			'show_option_none'    => __( 'None', 'lsx' ),
720
-			'style'               => 'list',
721
-			'taxonomy'            => $taxonomy,
722
-			'title_li'            => '',
723
-		);
724
-		$categories = wp_list_categories( $tax_args );
725
-		if ( ! empty( $categories ) ) {
726
-			echo '<div class="sitemap-rows">';
727
-			echo '<h2>' . wp_kses_post( $label ) . '</h2>';
728
-			echo '<ul>';
729
-			echo wp_kses_post( $categories );
730
-			echo '</ul>';
731
-			echo '</div>';
732
-		}
733
-	}
709
+     if ( '' !== $taxonomy ) {
710
+
711
+          $tax_args   = array(
712
+               'echo'                => 0,
713
+               'depth'               => 0,
714
+               'hide_empty'          => 1,
715
+               'hide_title_if_empty' => false,
716
+               'hierarchical'        => $hierarchical,
717
+               'separator'           => '<br />',
718
+               'show_count'          => 0,
719
+               'show_option_none'    => __( 'None', 'lsx' ),
720
+               'style'               => 'list',
721
+               'taxonomy'            => $taxonomy,
722
+               'title_li'            => '',
723
+          );
724
+          $categories = wp_list_categories( $tax_args );
725
+          if ( ! empty( $categories ) ) {
726
+               echo '<div class="sitemap-rows">';
727
+               echo '<h2>' . wp_kses_post( $label ) . '</h2>';
728
+               echo '<ul>';
729
+               echo wp_kses_post( $categories );
730
+               echo '</ul>';
731
+               echo '</div>';
732
+          }
733
+     }
734 734
 }
735 735
 
736 736
 if ( ! function_exists( 'lsx_sitemap_taxonomy_clouds' ) ) :
737 737
 
738
-	/**
739
-	 * Outputs the public taxonomies.
740
-	 *
741
-	 * @package    lsx
742
-	 * @subpackage template-tags
743
-	 */
744
-	function lsx_sitemap_taxonomy_clouds() {
745
-		$taxonomy_args = array(
746
-			'public'   => true,
747
-			'_builtin' => false,
748
-		);
749
-
750
-		$taxonomies = get_taxonomies( $taxonomy_args );
751
-
752
-		if ( ! empty( $taxonomies ) ) {
753
-			foreach ( $taxonomies as $taxonomy_id => $taxonomy ) {
754
-				$tag_cloud = wp_tag_cloud(
755
-					array(
756
-						'taxonomy' => $taxonomy_id,
757
-						'echo'     => false,
758
-					)
759
-				);
760
-
761
-				if ( ! empty( $tag_cloud ) ) {
762
-					echo '<h2>' . esc_html( $taxonomy ) . '</h2>';
763
-					echo '<aside id="' . esc_attr( $taxonomy_id ) . '" class="widget widget_' . esc_attr( $taxonomy_id ) . '">' . esc_html( $tag_cloud ) . '</aside>';
764
-				}
765
-			}
766
-		}
767
-	}
738
+     /**
739
+      * Outputs the public taxonomies.
740
+      *
741
+      * @package    lsx
742
+      * @subpackage template-tags
743
+      */
744
+     function lsx_sitemap_taxonomy_clouds() {
745
+          $taxonomy_args = array(
746
+               'public'   => true,
747
+               '_builtin' => false,
748
+          );
749
+
750
+          $taxonomies = get_taxonomies( $taxonomy_args );
751
+
752
+          if ( ! empty( $taxonomies ) ) {
753
+               foreach ( $taxonomies as $taxonomy_id => $taxonomy ) {
754
+                    $tag_cloud = wp_tag_cloud(
755
+                         array(
756
+                              'taxonomy' => $taxonomy_id,
757
+                              'echo'     => false,
758
+                         )
759
+                    );
760
+
761
+                    if ( ! empty( $tag_cloud ) ) {
762
+                         echo '<h2>' . esc_html( $taxonomy ) . '</h2>';
763
+                         echo '<aside id="' . esc_attr( $taxonomy_id ) . '" class="widget widget_' . esc_attr( $taxonomy_id ) . '">' . esc_html( $tag_cloud ) . '</aside>';
764
+                    }
765
+               }
766
+          }
767
+     }
768 768
 
769 769
 endif;
770 770
 
771 771
 if ( ! function_exists( 'lsx_add_top_menu' ) ) :
772 772
 
773
-	/**
774
-	 * Adds our top menu to the theme.
775
-	 *
776
-	 * @package    lsx
777
-	 * @subpackage template-tags
778
-	 */
779
-	function lsx_add_top_menu() {
780
-		if ( has_nav_menu( 'top-menu' ) || has_nav_menu( 'top-menu-left' ) ) :
781
-			?>
773
+     /**
774
+      * Adds our top menu to the theme.
775
+      *
776
+      * @package    lsx
777
+      * @subpackage template-tags
778
+      */
779
+     function lsx_add_top_menu() {
780
+          if ( has_nav_menu( 'top-menu' ) || has_nav_menu( 'top-menu-left' ) ) :
781
+               ?>
782 782
 			<div id="top-menu" class="<?php lsx_top_menu_classes(); ?>">
783 783
 				<div class="container">
784 784
 					<?php if ( has_nav_menu( 'top-menu' ) ) : ?>
785 785
 						<nav class="top-menu">
786 786
 							<?php
787
-								wp_nav_menu(
788
-									array(
789
-										'theme_location' => 'top-menu',
790
-										'walker'         => new LSX_Bootstrap_Navwalker(),
791
-									)
792
-								);
793
-							?>
787
+                                        wp_nav_menu(
788
+                                             array(
789
+                                                  'theme_location' => 'top-menu',
790
+                                                  'walker'         => new LSX_Bootstrap_Navwalker(),
791
+                                             )
792
+                                        );
793
+                                   ?>
794 794
 						</nav>
795 795
 					<?php endif; ?>
796 796
 
797 797
 					<?php if ( has_nav_menu( 'top-menu-left' ) ) : ?>
798 798
 						<nav class="top-menu pull-left">
799 799
 							<?php
800
-								wp_nav_menu(
801
-									array(
802
-										'theme_location' => 'top-menu-left',
803
-										'walker'         => new LSX_Bootstrap_Navwalker(),
804
-									)
805
-								);
806
-							?>
800
+                                        wp_nav_menu(
801
+                                             array(
802
+                                                  'theme_location' => 'top-menu-left',
803
+                                                  'walker'         => new LSX_Bootstrap_Navwalker(),
804
+                                             )
805
+                                        );
806
+                                   ?>
807 807
 						</nav>
808 808
 					<?php endif; ?>
809 809
 				</div>
810 810
 			</div>
811 811
 			<?php
812
-		endif;
813
-	}
812
+          endif;
813
+     }
814 814
 
815 815
 endif;
816 816
 
@@ -818,38 +818,38 @@  discard block
 block discarded – undo
818 818
 
819 819
 if ( ! function_exists( 'lsx_get_my_url' ) ) :
820 820
 
821
-	/**
822
-	 * Return URL from a link in the content.
823
-	 *
824
-	 * @package    lsx
825
-	 * @subpackage template-tags
826
-	 */
827
-	function lsx_get_my_url() {
828
-		if ( ! preg_match( '/^<a\s[^>]*?href=[\'"](.+?)[\'"]$/is', get_the_content(), $matches ) ) {
829
-			return false;
830
-		}
821
+     /**
822
+      * Return URL from a link in the content.
823
+      *
824
+      * @package    lsx
825
+      * @subpackage template-tags
826
+      */
827
+     function lsx_get_my_url() {
828
+          if ( ! preg_match( '/^<a\s[^>]*?href=[\'"](.+?)[\'"]$/is', get_the_content(), $matches ) ) {
829
+               return false;
830
+          }
831 831
 
832
-		return esc_url_raw( $matches[1] );
833
-	}
832
+          return esc_url_raw( $matches[1] );
833
+     }
834 834
 
835 835
 endif;
836 836
 
837 837
 if ( ! function_exists( 'lsx_get_template_part' ) ) :
838 838
 
839
-	/**
840
-	 * Gets a custom template part if the filters is populated,  or does the normal WP get_content_part()
841
-	 *
842
-	 * @package    lsx
843
-	 * @subpackage template-tags
844
-	 */
845
-	function lsx_get_template_part() {
846
-		$custom_template = apply_filters( 'lsx_get_template_part', '' );
847
-		if ( '' !== $custom_template && file_exists( $custom_template ) ) {
848
-			include $custom_template;
849
-		} else {
850
-			get_template_part( 'partials/content', get_post_format() );
851
-		}
852
-	}
839
+     /**
840
+      * Gets a custom template part if the filters is populated,  or does the normal WP get_content_part()
841
+      *
842
+      * @package    lsx
843
+      * @subpackage template-tags
844
+      */
845
+     function lsx_get_template_part() {
846
+          $custom_template = apply_filters( 'lsx_get_template_part', '' );
847
+          if ( '' !== $custom_template && file_exists( $custom_template ) ) {
848
+               include $custom_template;
849
+          } else {
850
+               get_template_part( 'partials/content', get_post_format() );
851
+          }
852
+     }
853 853
 
854 854
 endif;
855 855
 
Please login to merge, or discard this patch.
includes/classes/class-lsx-schema-utils.php 1 patch
Indentation   +208 added lines, -208 removed lines patch added patch discarded remove patch
@@ -10,212 +10,212 @@
 block discarded – undo
10 10
  * @since 11.6
11 11
  */
12 12
 class LSX_Schema_Utils {
13
-	/**
14
-	 * Determines whether a given post type should have Review schema.
15
-	 *
16
-	 * @param string $post_type       Post type to check.
17
-	 * @param string $comparison_type Post type to check against.
18
-	 *
19
-	 * @return bool True if it has schema, false if not.
20
-	 */
21
-	public static function is_type( $post_type = null, $comparison_type = null ) {
22
-		if ( is_null( $comparison_type ) ) {
23
-			return false;
24
-		}
25
-		if ( is_null( $post_type ) ) {
26
-			$post_type = get_post_type();
27
-		}
28
-		/**
29
-		 * Filter: 'wpseo_schema_$this->post_type_post_types' - Allow changing for which post types we output Review schema.
30
-		 *
31
-		 * @api string[] $post_types The post types for which we output Review.
32
-		 */
33
-		$post_types = apply_filters( 'wpseo_schema_' . $comparison_type . '_post_types', array( $comparison_type ) );
34
-		return in_array( $post_type, $post_types );
35
-	}
36
-	/**
37
-	 * Retrieve a users Schema ID.
38
-	 *
39
-	 * @param string               $place_id The Name of the Reviewer you need a for.
40
-	 * @param string               $type the type of the place.
41
-	 * @param WPSEO_Schema_Context $context A value object with context variables.
42
-	 *
43
-	 * @return string The user's schema ID.
44
-	 */
45
-	public static function get_places_schema_id( $place_id, $type, $context ) {
46
-		$url = $context->site_url . '#/schema/' . strtolower( $type ) . '/' . wp_hash( $place_id . get_the_title( $place_id ) );
47
-		return trailingslashit( $url );
48
-	}
49
-	/**
50
-	 * Retrieve a users Schema ID.
51
-	 *
52
-	 * @param string               $name The Name of the Reviewer you need a for.
53
-	 * @param WPSEO_Schema_Context $context A value object with context variables.
54
-	 *
55
-	 * @return string The user's schema ID.
56
-	 */
57
-	public static function get_subtrip_schema_id( $name, $context ) {
58
-		$url = $context->site_url . '#/subtrip/' . wp_hash( $name . $context->id );
59
-		return trailingslashit( $url );
60
-	}
61
-	/**
62
-	 * Retrieve an offer Schema ID.
63
-	 *
64
-	 * @param string               $id      post ID of the place being added.
65
-	 * @param WPSEO_Schema_Context $context A value object with context variables.
66
-	 * @param string               $local   if the Schema is local true / false.
67
-	 *
68
-	 * @return string The user's schema ID.
69
-	 */
70
-	public static function get_offer_schema_id( $id, $context, $local = false ) {
71
-		if ( false === $local ) {
72
-			$url = $context->site_url;
73
-		} else {
74
-			$url = get_permalink( $context->id );
75
-		}
76
-		$url .= '#/schema/offer/';
77
-		$url .= wp_hash( $id . get_the_title( $id ) );
78
-		return trailingslashit( $url );
79
-	}
80
-	/**
81
-	 * Retrieve an review Schema ID.
82
-	 *
83
-	 * @param string               $id      post ID of the place being added.
84
-	 * @param WPSEO_Schema_Context $context A value object with context variables.
85
-	 * @param string               $local   if the Schema is local true / false.
86
-	 *
87
-	 * @return string The user's schema ID.
88
-	 */
89
-	public static function get_review_schema_id( $id, $context, $local = false ) {
90
-		if ( false === $local ) {
91
-			$url = $context->site_url;
92
-		} else {
93
-			$url = get_permalink( $context->id );
94
-		}
95
-		$url .= '#/schema/review/';
96
-		$url .= wp_hash( $id . get_the_title( $id ) );
97
-		return trailingslashit( $url );
98
-	}
99
-	/**
100
-	 * Retrieve an Article Schema ID.
101
-	 *
102
-	 * @param string               $id      post ID of the place being added.
103
-	 * @param WPSEO_Schema_Context $context A value object with context variables.
104
-	 * @param string               $local   if the Schema is local true / false.
105
-	 *
106
-	 * @return string The user's schema ID.
107
-	 */
108
-	public static function get_article_schema_id( $id, $context, $local = false ) {
109
-		if ( false === $local ) {
110
-			$url = get_permalink( $id ) . \Schema_IDs::ARTICLE_HASH;
111
-		} else {
112
-			$url = get_permalink( $context->id ) . '#/schema/article/' . wp_hash( $id . get_the_title( $id ) );
113
-		}
114
-		return trailingslashit( $url );
115
-	}
116
-	/**
117
-	 * Retrieve a users Schema ID.
118
-	 *
119
-	 * @param string               $name The Name of the Reviewer you need a for.
120
-	 * @param WPSEO_Schema_Context $context A value object with context variables.
121
-	 *
122
-	 * @return string The user's schema ID.
123
-	 */
124
-	public static function get_author_schema_id( $name, $email, $context ) {
125
-		return $context->site_url . \Schema_IDs::PERSON_HASH . wp_hash( $name . $email );
126
-	}
127
-	/**
128
-	 * Generates the place graph piece for the subtrip / Itinerary arrays.
129
-	 *
130
-	 * @param array                $data         subTrip / itinerary data.
131
-	 * @param string               $type         The type in data to save the terms in.
132
-	 * @param string               $post_id      The post ID of the current Place to add.
133
-	 * @param WPSEO_Schema_Context $context      The post ID of the current Place to add.
134
-	 * @param string               $contained_in The @id of the containedIn place.
135
-	 *
136
-	 * @return mixed array $data Place data.
137
-	 */
138
-	public static function add_place( $data, $type, $post_id, $context, $contained_in = false ) {
139
-		$at_id = self::get_places_schema_id( $post_id, $type, $context );
140
-		$place = array(
141
-			'@type'       => $type,
142
-			'@id'         => $at_id,
143
-			'name'        => get_the_title( $post_id ),
144
-			'description' => get_the_excerpt( $post_id ),
145
-			'url'         => get_permalink( $post_id ),
146
-		);
147
-		if ( false !== $contained_in ) {
148
-			$place['containedInPlace'] = array(
149
-				'@type' => 'Country',
150
-				'@id'   => $contained_in,
151
-			);
152
-		}
153
-		$data[] = $place;
154
-		return $data;
155
-	}
156
-	/**
157
-	 * Adds an image node if the post has a featured image.
158
-	 *
159
-	 * @param array                $data         The Review data.
160
-	 * @param WPSEO_Schema_Context $context      The post ID of the current Place to add.
161
-	 *
162
-	 * @return array $data The Review data.
163
-	 */
164
-	public static function add_image( $data, $context ) {
165
-		if ( $context->has_image ) {
166
-			$data['image'] = array(
167
-				'@id' => $context->canonical . \Schema_IDs::PRIMARY_IMAGE_HASH,
168
-			);
169
-		}
170
-		return $data;
171
-	}
172
-	/**
173
-	 * Generates the itemReviewed schema
174
-	 *
175
-	 * @param  array  $items The array of IDS.
176
-	 * @param  string $type The schema type.
177
-	 * @return array $schema An array of the schema markup.
178
-	 */
179
-	public static function get_item_reviewed( $items = array(), $type = '' ) {
180
-		$schema = array();
181
-		if ( false !== $items && ! empty( $items ) && '' !== $type ) {
182
-			array_unique( $items );
183
-			foreach ( $items as $item ) {
184
-				$title = get_the_title( $item );
185
-				if ( '' !== $title ) {
186
-					$item_schema = array(
187
-						'@type' => $type,
188
-						'name'  => $title,
189
-					);
190
-					$schema[]    = $item_schema;
191
-				}
192
-			}
193
-		}
194
-		return $schema;
195
-	}
196
-	/**
197
-	 * Adds a term or multiple terms, comma separated, to a field.
198
-	 *
199
-	 * @param array  $data     Review data.
200
-	 * @param string $post_id  The ID of the item to fetch terms.
201
-	 * @param string $key      The key in data to save the terms in.
202
-	 * @param string $taxonomy The taxonomy to retrieve the terms from.
203
-	 *
204
-	 * @return mixed array $data Review data.
205
-	 */
206
-	public static function add_terms( $data, $post_id, $key, $taxonomy ) {
207
-		$terms = get_the_terms( $post_id, $taxonomy );
208
-		if ( is_array( $terms ) ) {
209
-			$keywords = array();
210
-			foreach ( $terms as $term ) {
211
-				// We are checking against the WordPress internal translation.
212
-				// @codingStandardsIgnoreLine
213
-				if ( __( 'Uncategorized', 'lsx' ) !== $term->name ) {
214
-					$keywords[] = $term->name;
215
-				}
216
-			}
217
-			$data[ $key ] = implode( ',', $keywords );
218
-		}
219
-		return $data;
220
-	}
13
+     /**
14
+      * Determines whether a given post type should have Review schema.
15
+      *
16
+      * @param string $post_type       Post type to check.
17
+      * @param string $comparison_type Post type to check against.
18
+      *
19
+      * @return bool True if it has schema, false if not.
20
+      */
21
+     public static function is_type( $post_type = null, $comparison_type = null ) {
22
+          if ( is_null( $comparison_type ) ) {
23
+               return false;
24
+          }
25
+          if ( is_null( $post_type ) ) {
26
+               $post_type = get_post_type();
27
+          }
28
+          /**
29
+           * Filter: 'wpseo_schema_$this->post_type_post_types' - Allow changing for which post types we output Review schema.
30
+           *
31
+           * @api string[] $post_types The post types for which we output Review.
32
+           */
33
+          $post_types = apply_filters( 'wpseo_schema_' . $comparison_type . '_post_types', array( $comparison_type ) );
34
+          return in_array( $post_type, $post_types );
35
+     }
36
+     /**
37
+      * Retrieve a users Schema ID.
38
+      *
39
+      * @param string               $place_id The Name of the Reviewer you need a for.
40
+      * @param string               $type the type of the place.
41
+      * @param WPSEO_Schema_Context $context A value object with context variables.
42
+      *
43
+      * @return string The user's schema ID.
44
+      */
45
+     public static function get_places_schema_id( $place_id, $type, $context ) {
46
+          $url = $context->site_url . '#/schema/' . strtolower( $type ) . '/' . wp_hash( $place_id . get_the_title( $place_id ) );
47
+          return trailingslashit( $url );
48
+     }
49
+     /**
50
+      * Retrieve a users Schema ID.
51
+      *
52
+      * @param string               $name The Name of the Reviewer you need a for.
53
+      * @param WPSEO_Schema_Context $context A value object with context variables.
54
+      *
55
+      * @return string The user's schema ID.
56
+      */
57
+     public static function get_subtrip_schema_id( $name, $context ) {
58
+          $url = $context->site_url . '#/subtrip/' . wp_hash( $name . $context->id );
59
+          return trailingslashit( $url );
60
+     }
61
+     /**
62
+      * Retrieve an offer Schema ID.
63
+      *
64
+      * @param string               $id      post ID of the place being added.
65
+      * @param WPSEO_Schema_Context $context A value object with context variables.
66
+      * @param string               $local   if the Schema is local true / false.
67
+      *
68
+      * @return string The user's schema ID.
69
+      */
70
+     public static function get_offer_schema_id( $id, $context, $local = false ) {
71
+          if ( false === $local ) {
72
+               $url = $context->site_url;
73
+          } else {
74
+               $url = get_permalink( $context->id );
75
+          }
76
+          $url .= '#/schema/offer/';
77
+          $url .= wp_hash( $id . get_the_title( $id ) );
78
+          return trailingslashit( $url );
79
+     }
80
+     /**
81
+      * Retrieve an review Schema ID.
82
+      *
83
+      * @param string               $id      post ID of the place being added.
84
+      * @param WPSEO_Schema_Context $context A value object with context variables.
85
+      * @param string               $local   if the Schema is local true / false.
86
+      *
87
+      * @return string The user's schema ID.
88
+      */
89
+     public static function get_review_schema_id( $id, $context, $local = false ) {
90
+          if ( false === $local ) {
91
+               $url = $context->site_url;
92
+          } else {
93
+               $url = get_permalink( $context->id );
94
+          }
95
+          $url .= '#/schema/review/';
96
+          $url .= wp_hash( $id . get_the_title( $id ) );
97
+          return trailingslashit( $url );
98
+     }
99
+     /**
100
+      * Retrieve an Article Schema ID.
101
+      *
102
+      * @param string               $id      post ID of the place being added.
103
+      * @param WPSEO_Schema_Context $context A value object with context variables.
104
+      * @param string               $local   if the Schema is local true / false.
105
+      *
106
+      * @return string The user's schema ID.
107
+      */
108
+     public static function get_article_schema_id( $id, $context, $local = false ) {
109
+          if ( false === $local ) {
110
+               $url = get_permalink( $id ) . \Schema_IDs::ARTICLE_HASH;
111
+          } else {
112
+               $url = get_permalink( $context->id ) . '#/schema/article/' . wp_hash( $id . get_the_title( $id ) );
113
+          }
114
+          return trailingslashit( $url );
115
+     }
116
+     /**
117
+      * Retrieve a users Schema ID.
118
+      *
119
+      * @param string               $name The Name of the Reviewer you need a for.
120
+      * @param WPSEO_Schema_Context $context A value object with context variables.
121
+      *
122
+      * @return string The user's schema ID.
123
+      */
124
+     public static function get_author_schema_id( $name, $email, $context ) {
125
+          return $context->site_url . \Schema_IDs::PERSON_HASH . wp_hash( $name . $email );
126
+     }
127
+     /**
128
+      * Generates the place graph piece for the subtrip / Itinerary arrays.
129
+      *
130
+      * @param array                $data         subTrip / itinerary data.
131
+      * @param string               $type         The type in data to save the terms in.
132
+      * @param string               $post_id      The post ID of the current Place to add.
133
+      * @param WPSEO_Schema_Context $context      The post ID of the current Place to add.
134
+      * @param string               $contained_in The @id of the containedIn place.
135
+      *
136
+      * @return mixed array $data Place data.
137
+      */
138
+     public static function add_place( $data, $type, $post_id, $context, $contained_in = false ) {
139
+          $at_id = self::get_places_schema_id( $post_id, $type, $context );
140
+          $place = array(
141
+               '@type'       => $type,
142
+               '@id'         => $at_id,
143
+               'name'        => get_the_title( $post_id ),
144
+               'description' => get_the_excerpt( $post_id ),
145
+               'url'         => get_permalink( $post_id ),
146
+          );
147
+          if ( false !== $contained_in ) {
148
+               $place['containedInPlace'] = array(
149
+                    '@type' => 'Country',
150
+                    '@id'   => $contained_in,
151
+               );
152
+          }
153
+          $data[] = $place;
154
+          return $data;
155
+     }
156
+     /**
157
+      * Adds an image node if the post has a featured image.
158
+      *
159
+      * @param array                $data         The Review data.
160
+      * @param WPSEO_Schema_Context $context      The post ID of the current Place to add.
161
+      *
162
+      * @return array $data The Review data.
163
+      */
164
+     public static function add_image( $data, $context ) {
165
+          if ( $context->has_image ) {
166
+               $data['image'] = array(
167
+                    '@id' => $context->canonical . \Schema_IDs::PRIMARY_IMAGE_HASH,
168
+               );
169
+          }
170
+          return $data;
171
+     }
172
+     /**
173
+      * Generates the itemReviewed schema
174
+      *
175
+      * @param  array  $items The array of IDS.
176
+      * @param  string $type The schema type.
177
+      * @return array $schema An array of the schema markup.
178
+      */
179
+     public static function get_item_reviewed( $items = array(), $type = '' ) {
180
+          $schema = array();
181
+          if ( false !== $items && ! empty( $items ) && '' !== $type ) {
182
+               array_unique( $items );
183
+               foreach ( $items as $item ) {
184
+                    $title = get_the_title( $item );
185
+                    if ( '' !== $title ) {
186
+                         $item_schema = array(
187
+                              '@type' => $type,
188
+                              'name'  => $title,
189
+                         );
190
+                         $schema[]    = $item_schema;
191
+                    }
192
+               }
193
+          }
194
+          return $schema;
195
+     }
196
+     /**
197
+      * Adds a term or multiple terms, comma separated, to a field.
198
+      *
199
+      * @param array  $data     Review data.
200
+      * @param string $post_id  The ID of the item to fetch terms.
201
+      * @param string $key      The key in data to save the terms in.
202
+      * @param string $taxonomy The taxonomy to retrieve the terms from.
203
+      *
204
+      * @return mixed array $data Review data.
205
+      */
206
+     public static function add_terms( $data, $post_id, $key, $taxonomy ) {
207
+          $terms = get_the_terms( $post_id, $taxonomy );
208
+          if ( is_array( $terms ) ) {
209
+               $keywords = array();
210
+               foreach ( $terms as $term ) {
211
+                    // We are checking against the WordPress internal translation.
212
+                    // @codingStandardsIgnoreLine
213
+                    if ( __( 'Uncategorized', 'lsx' ) !== $term->name ) {
214
+                         $keywords[] = $term->name;
215
+                    }
216
+               }
217
+               $data[ $key ] = implode( ',', $keywords );
218
+          }
219
+          return $data;
220
+     }
221 221
 }
Please login to merge, or discard this patch.
includes/classes/class-lsx-schema-graph-piece.php 1 patch
Indentation   +217 added lines, -217 removed lines patch added patch discarded remove patch
@@ -12,221 +12,221 @@
 block discarded – undo
12 12
 use \Yoast\WP\SEO\Generators\Schema\Abstract_Schema_Piece;
13 13
 
14 14
 if ( class_exists( 'Abstract_Schema_Piece' ) ) {
15
-	class LSX_Schema_Graph_Piece extends Abstract_Schema_Piece {
16
-		/**
17
-		 * A value object with context variables.
18
-		 *
19
-		 * @var \WPSEO_Schema_Context
20
-		 */
21
-		public $context;
22
-		/**
23
-		 * This is the post type that you want the piece to output for.
24
-		 *
25
-		 * @var string;
26
-		 */
27
-		public $post_type;
28
-		/**
29
-		 * If this is a top level parent
30
-		 *
31
-		 * @var boolean
32
-		 */
33
-		public $is_top_level;
34
-		/**
35
-		 * This holds the meta_key => scehma_type of the fields you want to add to your subtrip.
36
-		 *
37
-		 * @var array()
38
-		 */
39
-		public $place_ids;
40
-		/**
41
-		 * This holds an object or the current trip post.
42
-		 *
43
-		 * @var WP_Post();
44
-		 */
45
-		public $post;
46
-		/**
47
-		 * This holds URL for the trip
48
-		 *
49
-		 * @var string
50
-		 */
51
-		public $post_url;
52
-		/**
53
-		 * Constructor.
54
-		 *
55
-		 * @param \WPSEO_Schema_Context $context A value object with context variables.
56
-		 */
57
-		public function __construct( WPSEO_Schema_Context $context ) {
58
-			$this->context      = $context;
59
-			$this->place_ids    = array();
60
-			$this->post         = get_post( $this->context->id );
61
-			$this->post_url     = get_permalink( $this->context->id );
62
-			$this->is_top_level = false;
63
-			if ( is_object( $this->post ) && isset( $this->post->post_parent ) && ( false === $this->post->post_parent || 0 === $this->post->post_parent || '' === $this->post->post_parent ) ) {
64
-				$this->is_top_level = true;
65
-			}
66
-		}
67
-		/**
68
-		 * Determines whether or not a piece should be added to the graph.
69
-		 *
70
-		 * @return bool
71
-		 */
72
-		public function is_needed() {
73
-			if ( ! is_singular() ) {
74
-				return false;
75
-			}
76
-			if ( false === $this->context->site_represents ) {
77
-				return false;
78
-			}
79
-			return LSX_Schema_Utils::is_type( get_post_type(), $this->post_type );
80
-		}
81
-		/**
82
-		 * Returns Review data.
83
-		 *
84
-		 * @return array $data Review data.
85
-		 */
86
-		public function generate() {
87
-			$data = array();
88
-			return $data;
89
-		}
90
-		/**
91
-		 * Gets the connected reviews post type and set it as the "Review" schema
92
-		 *
93
-		 * @param  array    $data An array of offers already added.
94
-		 * @param  string   $data_key
95
-		 * @param  boolean  $include_aggregate
96
-		 * @return array    $data
97
-		 */
98
-		public function add_reviews( $data, $data_key = 'reviews', $include_aggregate = true ) {
99
-			$reviews       = get_post_meta( $this->context->id, 'review_to_' . $this->post_type, false );
100
-			$reviews_array = array();
101
-			if ( ! empty( $reviews ) ) {
102
-				$aggregate_value = 1;
103
-				$review_count    = 0;
104
-				foreach ( $reviews as $review_id ) {
105
-					$rating      = get_post_meta( $review_id, 'rating', true );
106
-					$author      = get_post_meta( $review_id, 'reviewer_name', true );
107
-					$description = wp_strip_all_tags( get_the_excerpt( $review_id ) );
108
-					$review_args = array(
109
-						'author'     => $author,
110
-						'reviewBody' => $description,
111
-					);
112
-					// Add in the review rating.
113
-					if ( false !== $rating && '' !== $rating && '0' !== $rating && 0 !== $rating ) {
114
-						$review_args['reviewRating'] = array(
115
-							'@type'       => 'Rating',
116
-							'ratingValue' => $rating,
117
-						);
118
-					}
119
-					$reviews_array = LSX_Schema_Utils::add_review( $reviews_array, $review_id, $this->context, $review_args );
120
-					$review_count++;
121
-				}
122
-				if ( ! empty( $reviews_array ) ) {
123
-					if ( true === $include_aggregate ) {
124
-						$data['aggregateRating'] = array(
125
-							'@type'       => 'AggregateRating',
126
-							'ratingValue' => (string) $aggregate_value,
127
-							'reviewCount' => (string) $review_count,
128
-							'bestRating'  => '5',
129
-							'worstRating' => '1',
130
-						);
131
-					}
132
-					$data[ $data_key ] = $reviews_array;
133
-				}
134
-			}
135
-			return $data;
136
-		}
137
-		/**
138
-		 * Gets the connected posts and set it as the "Article" schema
139
-		 *
140
-		 * @param  array  $data An array of offers already added.
141
-		 * @param  string $data_key
142
-		 * @return array  $data
143
-		 */
144
-		public function add_articles( $data, $data_key = 'subjectOf' ) {
145
-			$posts       = get_post_meta( $this->context->id, 'post_to_' . $this->post_type, false );
146
-			$posts_array = array();
147
-			if ( ! empty( $posts ) ) {
148
-				foreach ( $posts as $post_id ) {
149
-					$post_args = array(
150
-						'articleBody' => wp_strip_all_tags( get_the_excerpt( $post_id ) ),
151
-						'headline'    => get_the_title( $post_id ),
152
-					);
153
-					$section   = get_the_term_list( $post_id, 'category' );
154
-					if ( ! is_wp_error( $section ) && '' !== $section && false !== $section ) {
155
-						$post_args['articleSection'] = wp_strip_all_tags( $section );
156
-					}
157
-					if ( $this->context->site_represents_reference ) {
158
-						$post_args['publisher'] = $this->context->site_represents_reference;
159
-					}
160
-					$image_url = get_the_post_thumbnail_url( $post_id, 'lsx-thumbnail-wide' );
161
-					if ( false !== $image_url ) {
162
-						$post_args['image'] = $image_url;
163
-					}
164
-					$posts_array = LSX_Schema_Utils::add_article( $posts_array, $post_id, $this->context, $post_args );
165
-				}
166
-				if ( ! empty( $posts_array ) ) {
167
-					$data[ $data_key ] = $posts_array;
168
-				}
169
-			}
170
-			return $data;
171
-		}
172
-		/**
173
-		 * Adds the Project and Testimonials attached to the Team Member
174
-		 *
175
-		 * @param array $data
176
-		 *
177
-		 * @return array $data
178
-		 */
179
-		public function add_connections( $data ) {
180
-			$connections_array = array();
181
-			if ( $this->is_top_level ) {
182
-				$connections_array = $this->add_regions( $connections_array );
183
-				$connections_array = $this->add_accommodation( $connections_array );
184
-				if ( ! empty( $connections_array ) ) {
185
-					$data['containsPlace'] = $connections_array;
186
-				}
187
-			} else {
188
-				$connections_array             = $this->add_countries( $connections_array );
189
-				$data['containedInPlace'] = $connections_array;
190
-				$connections_array          = array();
191
-				$connections_array          = $this->add_accommodation( $connections_array );
192
-				$data['containsPlace'] = $connections_array;
193
-			}
194
-			return $data;
195
-		}
196
-		/**
197
-		 * Adds the terms for the taxonomy
198
-		 *
199
-		 * @param array $data     Review data.
200
-		 * @param array $data_key the parameter name you wish to assign it to.
201
-		 * @param array $taxonomy the taxonomy to grab terms for.
202
-		 *
203
-		 * @return array $data Review data.
204
-		 */
205
-		public function add_taxonomy_terms( $data, $data_key, $taxonomy ) {
206
-			/**
207
-			 * Filter: 'lsx_schema_' . $this->post_type . '_' . $data_key . '_taxonomy' - Allow changing the taxonomy used to assign keywords to a post type Review data.
208
-			 *
209
-			 * @api string $taxonomy The chosen taxonomy.
210
-			 */
211
-			$taxonomy = apply_filters( 'lsx_schema_' . $this->post_type . '_' . $data_key . '_taxonomy', $taxonomy );
212
-			return LSX_Schema_Utils::add_terms( $data, $this->context->id, $data_key, $taxonomy );
213
-		}
214
-		/**
215
-		 * Adds the custom field value for the supplied key
216
-		 *
217
-		 * @param array   $data     Schema data.
218
-		 * @param string  $data_key the parameter name you wish to assign it to.
219
-		 * @param string  $meta_key the taxonomy to grab terms for.
220
-		 * @param boolean $single   A single custom field or an array
221
-		 *
222
-		 * @return array $data Review data.
223
-		 */
224
-		public function add_custom_field( $data, $data_key, $meta_key, $single = true ) {
225
-			$value = get_post_meta( $this->context->id, $meta_key, $single );
226
-			if ( '' !== $value && false !== $value ) {
227
-				$data[ $data_key ] = $value;
228
-			}
229
-			return $data;
230
-		}
231
-	}
15
+     class LSX_Schema_Graph_Piece extends Abstract_Schema_Piece {
16
+          /**
17
+           * A value object with context variables.
18
+           *
19
+           * @var \WPSEO_Schema_Context
20
+           */
21
+          public $context;
22
+          /**
23
+           * This is the post type that you want the piece to output for.
24
+           *
25
+           * @var string;
26
+           */
27
+          public $post_type;
28
+          /**
29
+           * If this is a top level parent
30
+           *
31
+           * @var boolean
32
+           */
33
+          public $is_top_level;
34
+          /**
35
+           * This holds the meta_key => scehma_type of the fields you want to add to your subtrip.
36
+           *
37
+           * @var array()
38
+           */
39
+          public $place_ids;
40
+          /**
41
+           * This holds an object or the current trip post.
42
+           *
43
+           * @var WP_Post();
44
+           */
45
+          public $post;
46
+          /**
47
+           * This holds URL for the trip
48
+           *
49
+           * @var string
50
+           */
51
+          public $post_url;
52
+          /**
53
+           * Constructor.
54
+           *
55
+           * @param \WPSEO_Schema_Context $context A value object with context variables.
56
+           */
57
+          public function __construct( WPSEO_Schema_Context $context ) {
58
+               $this->context      = $context;
59
+               $this->place_ids    = array();
60
+               $this->post         = get_post( $this->context->id );
61
+               $this->post_url     = get_permalink( $this->context->id );
62
+               $this->is_top_level = false;
63
+               if ( is_object( $this->post ) && isset( $this->post->post_parent ) && ( false === $this->post->post_parent || 0 === $this->post->post_parent || '' === $this->post->post_parent ) ) {
64
+                    $this->is_top_level = true;
65
+               }
66
+          }
67
+          /**
68
+           * Determines whether or not a piece should be added to the graph.
69
+           *
70
+           * @return bool
71
+           */
72
+          public function is_needed() {
73
+               if ( ! is_singular() ) {
74
+                    return false;
75
+               }
76
+               if ( false === $this->context->site_represents ) {
77
+                    return false;
78
+               }
79
+               return LSX_Schema_Utils::is_type( get_post_type(), $this->post_type );
80
+          }
81
+          /**
82
+           * Returns Review data.
83
+           *
84
+           * @return array $data Review data.
85
+           */
86
+          public function generate() {
87
+               $data = array();
88
+               return $data;
89
+          }
90
+          /**
91
+           * Gets the connected reviews post type and set it as the "Review" schema
92
+           *
93
+           * @param  array    $data An array of offers already added.
94
+           * @param  string   $data_key
95
+           * @param  boolean  $include_aggregate
96
+           * @return array    $data
97
+           */
98
+          public function add_reviews( $data, $data_key = 'reviews', $include_aggregate = true ) {
99
+               $reviews       = get_post_meta( $this->context->id, 'review_to_' . $this->post_type, false );
100
+               $reviews_array = array();
101
+               if ( ! empty( $reviews ) ) {
102
+                    $aggregate_value = 1;
103
+                    $review_count    = 0;
104
+                    foreach ( $reviews as $review_id ) {
105
+                         $rating      = get_post_meta( $review_id, 'rating', true );
106
+                         $author      = get_post_meta( $review_id, 'reviewer_name', true );
107
+                         $description = wp_strip_all_tags( get_the_excerpt( $review_id ) );
108
+                         $review_args = array(
109
+                              'author'     => $author,
110
+                              'reviewBody' => $description,
111
+                         );
112
+                         // Add in the review rating.
113
+                         if ( false !== $rating && '' !== $rating && '0' !== $rating && 0 !== $rating ) {
114
+                              $review_args['reviewRating'] = array(
115
+                                   '@type'       => 'Rating',
116
+                                   'ratingValue' => $rating,
117
+                              );
118
+                         }
119
+                         $reviews_array = LSX_Schema_Utils::add_review( $reviews_array, $review_id, $this->context, $review_args );
120
+                         $review_count++;
121
+                    }
122
+                    if ( ! empty( $reviews_array ) ) {
123
+                         if ( true === $include_aggregate ) {
124
+                              $data['aggregateRating'] = array(
125
+                                   '@type'       => 'AggregateRating',
126
+                                   'ratingValue' => (string) $aggregate_value,
127
+                                   'reviewCount' => (string) $review_count,
128
+                                   'bestRating'  => '5',
129
+                                   'worstRating' => '1',
130
+                              );
131
+                         }
132
+                         $data[ $data_key ] = $reviews_array;
133
+                    }
134
+               }
135
+               return $data;
136
+          }
137
+          /**
138
+           * Gets the connected posts and set it as the "Article" schema
139
+           *
140
+           * @param  array  $data An array of offers already added.
141
+           * @param  string $data_key
142
+           * @return array  $data
143
+           */
144
+          public function add_articles( $data, $data_key = 'subjectOf' ) {
145
+               $posts       = get_post_meta( $this->context->id, 'post_to_' . $this->post_type, false );
146
+               $posts_array = array();
147
+               if ( ! empty( $posts ) ) {
148
+                    foreach ( $posts as $post_id ) {
149
+                         $post_args = array(
150
+                              'articleBody' => wp_strip_all_tags( get_the_excerpt( $post_id ) ),
151
+                              'headline'    => get_the_title( $post_id ),
152
+                         );
153
+                         $section   = get_the_term_list( $post_id, 'category' );
154
+                         if ( ! is_wp_error( $section ) && '' !== $section && false !== $section ) {
155
+                              $post_args['articleSection'] = wp_strip_all_tags( $section );
156
+                         }
157
+                         if ( $this->context->site_represents_reference ) {
158
+                              $post_args['publisher'] = $this->context->site_represents_reference;
159
+                         }
160
+                         $image_url = get_the_post_thumbnail_url( $post_id, 'lsx-thumbnail-wide' );
161
+                         if ( false !== $image_url ) {
162
+                              $post_args['image'] = $image_url;
163
+                         }
164
+                         $posts_array = LSX_Schema_Utils::add_article( $posts_array, $post_id, $this->context, $post_args );
165
+                    }
166
+                    if ( ! empty( $posts_array ) ) {
167
+                         $data[ $data_key ] = $posts_array;
168
+                    }
169
+               }
170
+               return $data;
171
+          }
172
+          /**
173
+           * Adds the Project and Testimonials attached to the Team Member
174
+           *
175
+           * @param array $data
176
+           *
177
+           * @return array $data
178
+           */
179
+          public function add_connections( $data ) {
180
+               $connections_array = array();
181
+               if ( $this->is_top_level ) {
182
+                    $connections_array = $this->add_regions( $connections_array );
183
+                    $connections_array = $this->add_accommodation( $connections_array );
184
+                    if ( ! empty( $connections_array ) ) {
185
+                         $data['containsPlace'] = $connections_array;
186
+                    }
187
+               } else {
188
+                    $connections_array             = $this->add_countries( $connections_array );
189
+                    $data['containedInPlace'] = $connections_array;
190
+                    $connections_array          = array();
191
+                    $connections_array          = $this->add_accommodation( $connections_array );
192
+                    $data['containsPlace'] = $connections_array;
193
+               }
194
+               return $data;
195
+          }
196
+          /**
197
+           * Adds the terms for the taxonomy
198
+           *
199
+           * @param array $data     Review data.
200
+           * @param array $data_key the parameter name you wish to assign it to.
201
+           * @param array $taxonomy the taxonomy to grab terms for.
202
+           *
203
+           * @return array $data Review data.
204
+           */
205
+          public function add_taxonomy_terms( $data, $data_key, $taxonomy ) {
206
+               /**
207
+                * Filter: 'lsx_schema_' . $this->post_type . '_' . $data_key . '_taxonomy' - Allow changing the taxonomy used to assign keywords to a post type Review data.
208
+                *
209
+                * @api string $taxonomy The chosen taxonomy.
210
+                */
211
+               $taxonomy = apply_filters( 'lsx_schema_' . $this->post_type . '_' . $data_key . '_taxonomy', $taxonomy );
212
+               return LSX_Schema_Utils::add_terms( $data, $this->context->id, $data_key, $taxonomy );
213
+          }
214
+          /**
215
+           * Adds the custom field value for the supplied key
216
+           *
217
+           * @param array   $data     Schema data.
218
+           * @param string  $data_key the parameter name you wish to assign it to.
219
+           * @param string  $meta_key the taxonomy to grab terms for.
220
+           * @param boolean $single   A single custom field or an array
221
+           *
222
+           * @return array $data Review data.
223
+           */
224
+          public function add_custom_field( $data, $data_key, $meta_key, $single = true ) {
225
+               $value = get_post_meta( $this->context->id, $meta_key, $single );
226
+               if ( '' !== $value && false !== $value ) {
227
+                    $data[ $data_key ] = $value;
228
+               }
229
+               return $data;
230
+          }
231
+     }
232 232
 }
Please login to merge, or discard this patch.
includes/layout.php 1 patch
Indentation   +269 added lines, -269 removed lines patch added patch discarded remove patch
@@ -7,137 +7,137 @@  discard block
 block discarded – undo
7 7
  */
8 8
 
9 9
 if ( ! defined( 'ABSPATH' ) ) {
10
-	exit;
10
+     exit;
11 11
 }
12 12
 
13 13
 if ( ! function_exists( 'lsx_layout_selector' ) ) :
14
-	/**
15
-	 * Layout selector.
16
-	 *
17
-	 * @package    lsx
18
-	 * @subpackage layout
19
-	 */
20
-	function lsx_layout_selector( $class, $area = 'site' ) {
21
-		$return_class = '';
22
-		$layout       = get_theme_mod( 'lsx_layout', '1c' );
23
-		$layout       = apply_filters( 'lsx_layout', $layout );
24
-		$default_size = 'sm';
25
-		$size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
26
-
27
-		switch ( $layout ) {
28
-			case '1c':
29
-				$main_class    = 'col-' . $size . '-12';
30
-				$sidebar_class = 'col-' . $size . '-12';
31
-				break;
32
-			case '2cr':
33
-				$main_class    = 'col-' . $size . '-8';
34
-				$sidebar_class = 'col-' . $size . '-4';
35
-				break;
36
-			case '2cl':
37
-				$main_class    = 'col-' . $size . '-8 col-' . $size . '-push-4';
38
-				$sidebar_class = 'col-' . $size . '-4 col-' . $size . '-pull-8';
39
-				break;
40
-			default:
41
-				$main_class    = 'col-' . $size . '-8';
42
-				$sidebar_class = 'col-' . $size . '-4';
43
-				break;
44
-		}
45
-
46
-		if ( 'main' === $class ) {
47
-			$return_class = apply_filters( 'lsx_layout_selector', $main_class, $class, $layout, $size );
48
-		}
49
-
50
-		if ( 'sidebar' === $class ) {
51
-			$return_class = apply_filters( 'lsx_layout_selector', $sidebar_class, $class, $layout, $size );
52
-		}
53
-
54
-		return $return_class;
55
-	}
14
+     /**
15
+      * Layout selector.
16
+      *
17
+      * @package    lsx
18
+      * @subpackage layout
19
+      */
20
+     function lsx_layout_selector( $class, $area = 'site' ) {
21
+          $return_class = '';
22
+          $layout       = get_theme_mod( 'lsx_layout', '1c' );
23
+          $layout       = apply_filters( 'lsx_layout', $layout );
24
+          $default_size = 'sm';
25
+          $size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
26
+
27
+          switch ( $layout ) {
28
+               case '1c':
29
+                    $main_class    = 'col-' . $size . '-12';
30
+                    $sidebar_class = 'col-' . $size . '-12';
31
+                    break;
32
+               case '2cr':
33
+                    $main_class    = 'col-' . $size . '-8';
34
+                    $sidebar_class = 'col-' . $size . '-4';
35
+                    break;
36
+               case '2cl':
37
+                    $main_class    = 'col-' . $size . '-8 col-' . $size . '-push-4';
38
+                    $sidebar_class = 'col-' . $size . '-4 col-' . $size . '-pull-8';
39
+                    break;
40
+               default:
41
+                    $main_class    = 'col-' . $size . '-8';
42
+                    $sidebar_class = 'col-' . $size . '-4';
43
+                    break;
44
+          }
45
+
46
+          if ( 'main' === $class ) {
47
+               $return_class = apply_filters( 'lsx_layout_selector', $main_class, $class, $layout, $size );
48
+          }
49
+
50
+          if ( 'sidebar' === $class ) {
51
+               $return_class = apply_filters( 'lsx_layout_selector', $sidebar_class, $class, $layout, $size );
52
+          }
53
+
54
+          return $return_class;
55
+     }
56 56
 endif;
57 57
 
58 58
 if ( ! function_exists( 'lsx_main_class' ) ) :
59
-	/**
60
-	 * .main classes.
61
-	 *
62
-	 * @package    lsx
63
-	 * @subpackage layout
64
-	 */
65
-	function lsx_main_class() {
66
-		return lsx_layout_selector( 'main' );
67
-	}
59
+     /**
60
+      * .main classes.
61
+      *
62
+      * @package    lsx
63
+      * @subpackage layout
64
+      */
65
+     function lsx_main_class() {
66
+          return lsx_layout_selector( 'main' );
67
+     }
68 68
 endif;
69 69
 
70 70
 if ( ! function_exists( 'lsx_sidebar_class' ) ) :
71
-	/**
72
-	 * .sidebar classes.
73
-	 *
74
-	 * @package    lsx
75
-	 * @subpackage layout
76
-	 */
77
-	function lsx_sidebar_class() {
78
-		return lsx_layout_selector( 'sidebar' );
79
-	}
71
+     /**
72
+      * .sidebar classes.
73
+      *
74
+      * @package    lsx
75
+      * @subpackage layout
76
+      */
77
+     function lsx_sidebar_class() {
78
+          return lsx_layout_selector( 'sidebar' );
79
+     }
80 80
 endif;
81 81
 
82 82
 if ( ! function_exists( 'lsx_header_classes' ) ) :
83
-	/**
84
-	 * Output the classes for the header.
85
-	 *
86
-	 * @package    lsx
87
-	 * @subpackage layout
88
-	 */
89
-	function lsx_header_classes( $additional = false ) {
90
-		$classes = 'banner navbar navbar-default';
91
-
92
-		if ( false !== $additional ) {
93
-			$classes .= ' ' . $additional;
94
-		}
95
-
96
-		echo esc_attr( $classes );
97
-	}
83
+     /**
84
+      * Output the classes for the header.
85
+      *
86
+      * @package    lsx
87
+      * @subpackage layout
88
+      */
89
+     function lsx_header_classes( $additional = false ) {
90
+          $classes = 'banner navbar navbar-default';
91
+
92
+          if ( false !== $additional ) {
93
+               $classes .= ' ' . $additional;
94
+          }
95
+
96
+          echo esc_attr( $classes );
97
+     }
98 98
 endif;
99 99
 
100 100
 if ( ! function_exists( 'lsx_top_menu_classes' ) ) :
101
-	/**
102
-	 * Output the classes for the top-menu.
103
-	 *
104
-	 * @package    lsx
105
-	 * @subpackage layout
106
-	 */
107
-	function lsx_top_menu_classes( $additional = false ) {
108
-		$classes = 'top-menu-default';
109
-
110
-		if ( false !== $additional ) {
111
-			$classes .= ' ' . $additional;
112
-		}
113
-
114
-		echo esc_attr( $classes );
115
-	}
101
+     /**
102
+      * Output the classes for the top-menu.
103
+      *
104
+      * @package    lsx
105
+      * @subpackage layout
106
+      */
107
+     function lsx_top_menu_classes( $additional = false ) {
108
+          $classes = 'top-menu-default';
109
+
110
+          if ( false !== $additional ) {
111
+               $classes .= ' ' . $additional;
112
+          }
113
+
114
+          echo esc_attr( $classes );
115
+     }
116 116
 endif;
117 117
 
118 118
 if ( ! function_exists( 'lsx_post_wrapper_class' ) ) :
119
-	/**
120
-	 * Output the classes for the top-menu.
121
-	 *
122
-	 * @package    lsx
123
-	 * @subpackage layout
124
-	 */
125
-	function lsx_post_wrapper_class() {
126
-		return apply_filters( 'lsx_post_wrapper_class', '' );
127
-	}
119
+     /**
120
+      * Output the classes for the top-menu.
121
+      *
122
+      * @package    lsx
123
+      * @subpackage layout
124
+      */
125
+     function lsx_post_wrapper_class() {
126
+          return apply_filters( 'lsx_post_wrapper_class', '' );
127
+     }
128 128
 endif;
129 129
 
130 130
 
131 131
 
132 132
 if ( ! function_exists( 'lsx_add_footer_sidebar_area' ) ) :
133
-	/**
134
-	 * Output the Footer CTA and/pr Footer Widgets.
135
-	 *
136
-	 * @package    lsx
137
-	 * @subpackage layout
138
-	 */
139
-	function lsx_add_footer_sidebar_area() {
140
-		if ( is_active_sidebar( 'sidebar-footer-cta' ) ) : ?>
133
+     /**
134
+      * Output the Footer CTA and/pr Footer Widgets.
135
+      *
136
+      * @package    lsx
137
+      * @subpackage layout
138
+      */
139
+     function lsx_add_footer_sidebar_area() {
140
+          if ( is_active_sidebar( 'sidebar-footer-cta' ) ) : ?>
141 141
 			<div id="footer-cta">
142 142
 				<div class="container">
143 143
 					<div class="lsx-full-width">
@@ -158,48 +158,48 @@  discard block
 block discarded – undo
158 158
 				</div>
159 159
 			</div>
160 160
 			<?php
161
-		endif;
162
-	}
163
-	add_action( 'lsx_footer_before', 'lsx_add_footer_sidebar_area' );
161
+          endif;
162
+     }
163
+     add_action( 'lsx_footer_before', 'lsx_add_footer_sidebar_area' );
164 164
 endif;
165 165
 
166 166
 if ( ! function_exists( 'lsx_global_header' ) ) :
167
-	/**
168
-	 * Displays the global header.
169
-	 *
170
-	 * @package    lsx
171
-	 * @subpackage layout
172
-	 */
173
-	function lsx_global_header() {
174
-		$show_on_front  = get_option( 'show_on_front' );
175
-		$queried_object = get_queried_object();
176
-		$default_size   = 'sm';
177
-		$size           = apply_filters( 'lsx_bootstrap_column_size', $default_size );
178
-
179
-		// Cart and Checkout won't have banners of any kind.
180
-		if ( function_exists( 'is_woocommerce' ) && ( is_checkout() || is_cart() ) ) {
181
-			return;
182
-		}
183
-
184
-		// Product pages have their own banner function 'lsx_page_banner()'.
185
-		if ( function_exists( 'is_woocommerce' ) && ( is_product() ) ) {
186
-			return;
187
-		}
188
-
189
-		// Events wont have banners.
190
-		if ( function_exists( 'tribe_is_event' ) && ( tribe_is_event() || tribe_is_organizer() || tribe_is_venue() ) ) {
191
-			return;
192
-		}
193
-
194
-		if ( function_exists( 'lsx_is_rest_api_request' ) && lsx_is_rest_api_request() ) {
195
-			return;
196
-		}
197
-
198
-		if ( is_page() && ( 'page' !== $show_on_front || ! is_front_page() ) ) :
199
-			if ( class_exists( 'LSX_Banners' ) && empty( apply_filters( 'lsx_banner_plugin_disable', false ) && ( ! has_post_thumbnail() ) ) ) {
200
-				return;
201
-			}
202
-				?>
167
+     /**
168
+      * Displays the global header.
169
+      *
170
+      * @package    lsx
171
+      * @subpackage layout
172
+      */
173
+     function lsx_global_header() {
174
+          $show_on_front  = get_option( 'show_on_front' );
175
+          $queried_object = get_queried_object();
176
+          $default_size   = 'sm';
177
+          $size           = apply_filters( 'lsx_bootstrap_column_size', $default_size );
178
+
179
+          // Cart and Checkout won't have banners of any kind.
180
+          if ( function_exists( 'is_woocommerce' ) && ( is_checkout() || is_cart() ) ) {
181
+               return;
182
+          }
183
+
184
+          // Product pages have their own banner function 'lsx_page_banner()'.
185
+          if ( function_exists( 'is_woocommerce' ) && ( is_product() ) ) {
186
+               return;
187
+          }
188
+
189
+          // Events wont have banners.
190
+          if ( function_exists( 'tribe_is_event' ) && ( tribe_is_event() || tribe_is_organizer() || tribe_is_venue() ) ) {
191
+               return;
192
+          }
193
+
194
+          if ( function_exists( 'lsx_is_rest_api_request' ) && lsx_is_rest_api_request() ) {
195
+               return;
196
+          }
197
+
198
+          if ( is_page() && ( 'page' !== $show_on_front || ! is_front_page() ) ) :
199
+               if ( class_exists( 'LSX_Banners' ) && empty( apply_filters( 'lsx_banner_plugin_disable', false ) && ( ! has_post_thumbnail() ) ) ) {
200
+                    return;
201
+               }
202
+                    ?>
203 203
 			<div class="archive-header-wrapper banner-page col-<?php echo esc_attr( $size ); ?>-12">
204 204
 				<?php lsx_global_header_inner_bottom(); ?>
205 205
 				<header class="archive-header">
@@ -209,8 +209,8 @@  discard block
 block discarded – undo
209 209
 			</div>
210 210
 			<?php
211 211
 
212
-		elseif ( is_single() && ! is_singular( 'post' ) ) :
213
-			?>
212
+          elseif ( is_single() && ! is_singular( 'post' ) ) :
213
+               ?>
214 214
 			<div class="archive-header-wrapper banner-single col-<?php echo esc_attr( $size ); ?>-12">
215 215
 				<?php lsx_global_header_inner_bottom(); ?>
216 216
 				<header class="archive-header">
@@ -219,29 +219,29 @@  discard block
 block discarded – undo
219 219
 
220 220
 			</div>
221 221
 			<?php
222
-		elseif ( is_search() ) :
223
-			?>
222
+          elseif ( is_search() ) :
223
+               ?>
224 224
 			<div class="archive-header-wrapper banner-search col-<?php echo esc_attr( $size ); ?>-12">
225 225
 				<?php lsx_global_header_inner_bottom(); ?>
226 226
 				<header class="archive-header">
227 227
 					<h1 class="archive-title">
228 228
 						<?php
229
-							printf(
230
-								/* Translators: %s: search term/query */
231
-								esc_html__( 'Search Results for: %s', 'lsx' ),
232
-								'<span>' . get_search_query() . '</span>'
233
-							);
234
-						?>
229
+                                   printf(
230
+                                        /* Translators: %s: search term/query */
231
+                                        esc_html__( 'Search Results for: %s', 'lsx' ),
232
+                                        '<span>' . get_search_query() . '</span>'
233
+                                   );
234
+                              ?>
235 235
 					</h1>
236 236
 				</header>
237 237
 
238 238
 			</div>
239 239
 			<?php
240
-		elseif ( is_author() ) :
241
-			$author        = get_the_author();
242
-			$author_avatar = get_avatar( get_the_author_meta( 'ID' ), 256 );
243
-			$author_bio    = get_the_archive_description();
244
-			?>
240
+          elseif ( is_author() ) :
241
+               $author        = get_the_author();
242
+               $author_avatar = get_avatar( get_the_author_meta( 'ID' ), 256 );
243
+               $author_bio    = get_the_archive_description();
244
+               ?>
245 245
 			<div class="archive-header-wrapper banner-archive-author col-<?php echo esc_attr( $size ); ?>-12">
246 246
 				<?php lsx_global_header_inner_bottom(); ?>
247 247
 				<header class="archive-header">
@@ -250,8 +250,8 @@  discard block
 block discarded – undo
250 250
 
251 251
 			</div>
252 252
 			<?php
253
-		elseif ( is_archive() ) :
254
-			?>
253
+          elseif ( is_archive() ) :
254
+               ?>
255 255
 			<div class="archive-header-wrapper banner-archive col-<?php echo esc_attr( $size ); ?>-12">
256 256
 				<?php lsx_global_header_inner_bottom(); ?>
257 257
 				<header class="archive-header">
@@ -264,15 +264,15 @@  discard block
 block discarded – undo
264 264
 					</h1>
265 265
 
266 266
 					<?php
267
-					if ( false === apply_filters( 'lsx_display_global_header_description', false ) ) {
268
-						the_archive_description();
269
-					}
270
-					?>
267
+                         if ( false === apply_filters( 'lsx_display_global_header_description', false ) ) {
268
+                              the_archive_description();
269
+                         }
270
+                         ?>
271 271
 				</header>
272 272
 			</div>
273 273
 			<?php
274
-		elseif ( 'page' === $show_on_front && (int) get_option( 'page_for_posts' ) === $queried_object->ID ) :
275
-			?>
274
+          elseif ( 'page' === $show_on_front && (int) get_option( 'page_for_posts' ) === $queried_object->ID ) :
275
+               ?>
276 276
 			<div class="archive-header-wrapper banner-page col-<?php echo esc_attr( $size ); ?>-12">
277 277
 				<?php lsx_global_header_inner_bottom(); ?>
278 278
 				<header class="archive-header">
@@ -281,47 +281,47 @@  discard block
 block discarded – undo
281 281
 
282 282
 			</div>
283 283
 			<?php
284
-		elseif ( ! is_singular( 'post' ) ) :
285
-			// Display only the breadcrumbs.
286
-			?>
284
+          elseif ( ! is_singular( 'post' ) ) :
285
+               // Display only the breadcrumbs.
286
+               ?>
287 287
 			<div class="archive-header-wrapper banner-singular col-<?php echo esc_attr( $size ); ?>-12">
288 288
 				<?php lsx_global_header_inner_bottom(); ?>
289 289
 			</div>
290 290
 			<?php
291
-		elseif ( ( true === apply_filters( 'lsx_global_header_disable', false ) ) && ( ! is_search() ) ) :
292
-			// Display only the breadcrumbs.
293
-			?>
291
+          elseif ( ( true === apply_filters( 'lsx_global_header_disable', false ) ) && ( ! is_search() ) ) :
292
+               // Display only the breadcrumbs.
293
+               ?>
294 294
 			<div class="archive-header-wrapper banner-global col-<?php echo esc_attr( $size ); ?>-12">
295 295
 				<?php lsx_global_header_inner_bottom(); ?>
296 296
 			</div>
297 297
 			<?php
298
-		endif;
299
-	}
300
-	add_action( 'lsx_content_wrap_before', 'lsx_global_header' );
298
+          endif;
299
+     }
300
+     add_action( 'lsx_content_wrap_before', 'lsx_global_header' );
301 301
 endif;
302 302
 
303 303
 if ( ! function_exists( 'lsx_author_extra_info' ) ) :
304
-	/**
305
-	 * Displays the author extra info.
306
-	 *
307
-	 * @package    lsx
308
-	 * @subpackage layout
309
-	 */
310
-	function lsx_author_extra_info() {
311
-		$default_size = 'sm';
312
-		$size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
313
-
314
-		if ( is_author() ) :
315
-			$author_id         = get_the_author_meta( 'ID' );
316
-			$author            = get_the_author();
317
-			$author_avatar     = get_avatar( $author_id, 400 );
318
-			$author_bio        = get_the_archive_description();
319
-			$author_url        = get_the_author_meta( 'url', $author_id );
320
-			$author_email      = get_the_author_meta( 'email', $author_id );
321
-			$author_facebook   = get_the_author_meta( 'facebook', $author_id );
322
-			$author_linkedin   = get_the_author_meta( 'linkedin', $author_id );
323
-			$author_twitter    = get_the_author_meta( 'twitter', $author_id );
324
-			?>
304
+     /**
305
+      * Displays the author extra info.
306
+      *
307
+      * @package    lsx
308
+      * @subpackage layout
309
+      */
310
+     function lsx_author_extra_info() {
311
+          $default_size = 'sm';
312
+          $size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
313
+
314
+          if ( is_author() ) :
315
+               $author_id         = get_the_author_meta( 'ID' );
316
+               $author            = get_the_author();
317
+               $author_avatar     = get_avatar( $author_id, 400 );
318
+               $author_bio        = get_the_archive_description();
319
+               $author_url        = get_the_author_meta( 'url', $author_id );
320
+               $author_email      = get_the_author_meta( 'email', $author_id );
321
+               $author_facebook   = get_the_author_meta( 'facebook', $author_id );
322
+               $author_linkedin   = get_the_author_meta( 'linkedin', $author_id );
323
+               $author_twitter    = get_the_author_meta( 'twitter', $author_id );
324
+               ?>
325 325
 			<div class="col-<?php echo esc_attr( $size ); ?>-12">
326 326
 				<div class="archive-author-data">
327 327
 					<div class="row">
@@ -335,10 +335,10 @@  discard block
 block discarded – undo
335 335
 							<!-- Name -->
336 336
 							<h2 class="archive-author-title">
337 337
 								<?php
338
-								if ( '' !== $author ) {
339
-									echo esc_html( $author );
340
-								}
341
-								?>
338
+                                        if ( '' !== $author ) {
339
+                                             echo esc_html( $author );
340
+                                        }
341
+                                        ?>
342 342
 							</h2>
343 343
 							<!-- Social -->
344 344
 							<?php if ( ! empty( $author_url ) || ! empty( $author_email ) || ! empty( $author_facebook ) || ! empty( $author_twitter ) ) : ?>
@@ -375,36 +375,36 @@  discard block
 block discarded – undo
375 375
 				<h2><?php echo esc_html__( 'Posts', 'lsx' ); ?></h2>
376 376
 			</div>
377 377
 			<?php
378
-		endif;
379
-	}
380
-	add_action( 'lsx_content_wrap_before', 'lsx_author_extra_info', 11 );
378
+          endif;
379
+     }
380
+     add_action( 'lsx_content_wrap_before', 'lsx_author_extra_info', 11 );
381 381
 endif;
382 382
 
383 383
 if ( ! function_exists( 'lsx_post_header' ) ) :
384
-	/**
385
-	 * Displays the post header.
386
-	 *
387
-	 * @package    lsx
388
-	 * @subpackage layout
389
-	 */
390
-	function lsx_post_header() {
391
-		$default_size = 'sm';
392
-		$size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
393
-
394
-		$disable_title = get_post_meta( get_the_ID(), 'lsx_disable_title', true );
395
-		if ( 'yes' === $disable_title && is_singular( 'post' ) ) {
396
-			return;
397
-		}
398
-
399
-		if ( is_singular( 'post' ) ) :
400
-			$format = get_post_format();
401
-
402
-			if ( false === $format ) {
403
-				$format = 'standard';
404
-			}
405
-
406
-			$format = lsx_translate_format_to_fontawesome( $format );
407
-			?>
384
+     /**
385
+      * Displays the post header.
386
+      *
387
+      * @package    lsx
388
+      * @subpackage layout
389
+      */
390
+     function lsx_post_header() {
391
+          $default_size = 'sm';
392
+          $size         = apply_filters( 'lsx_bootstrap_column_size', $default_size );
393
+
394
+          $disable_title = get_post_meta( get_the_ID(), 'lsx_disable_title', true );
395
+          if ( 'yes' === $disable_title && is_singular( 'post' ) ) {
396
+               return;
397
+          }
398
+
399
+          if ( is_singular( 'post' ) ) :
400
+               $format = get_post_format();
401
+
402
+               if ( false === $format ) {
403
+                    $format = 'standard';
404
+               }
405
+
406
+               $format = lsx_translate_format_to_fontawesome( $format );
407
+               ?>
408 408
 			<div class="archive-header-wrapper banner-post-header col-<?php echo esc_attr( $size ); ?>-12">
409 409
 				<header class="archive-header">
410 410
 					<h1 class="archive-title">
@@ -414,58 +414,58 @@  discard block
 block discarded – undo
414 414
 				</header>
415 415
 			</div>
416 416
 			<?php
417
-		endif;
418
-	}
419
-	add_action( 'lsx_entry_top', 'lsx_post_header' );
417
+          endif;
418
+     }
419
+     add_action( 'lsx_entry_top', 'lsx_post_header' );
420 420
 endif;
421 421
 
422 422
 if ( ! function_exists( 'lsx_add_viewport_meta_tag' ) ) :
423
-	/**
424
-	 * Add Viewport Meta Tag to head.
425
-	 *
426
-	 * @package    lsx
427
-	 * @subpackage layout
428
-	 */
429
-	function lsx_add_viewport_meta_tag() {
430
-		?>
423
+     /**
424
+      * Add Viewport Meta Tag to head.
425
+      *
426
+      * @package    lsx
427
+      * @subpackage layout
428
+      */
429
+     function lsx_add_viewport_meta_tag() {
430
+          ?>
431 431
 		<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0">
432 432
 		<?php
433
-	}
434
-	add_action( 'wp_head', 'lsx_add_viewport_meta_tag' );
433
+     }
434
+     add_action( 'wp_head', 'lsx_add_viewport_meta_tag' );
435 435
 endif;
436 436
 
437 437
 if ( ! function_exists( 'lsx_header_search_form' ) ) :
438
-	/**
439
-	 * Add a search form to just above the nav menu.
440
-	 *
441
-	 * @package    lsx
442
-	 * @subpackage layout
443
-	 */
444
-	function lsx_header_search_form() {
445
-		$search_form = get_theme_mod( 'lsx_header_search', false );
446
-
447
-		if ( false !== $search_form || is_customize_preview() ) {
448
-			get_search_form( true );
449
-		}
450
-	}
451
-	$mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' );
452
-	add_action( 'lsx_nav_before', 'lsx_header_search_form', 0 );
438
+     /**
439
+      * Add a search form to just above the nav menu.
440
+      *
441
+      * @package    lsx
442
+      * @subpackage layout
443
+      */
444
+     function lsx_header_search_form() {
445
+          $search_form = get_theme_mod( 'lsx_header_search', false );
446
+
447
+          if ( false !== $search_form || is_customize_preview() ) {
448
+               get_search_form( true );
449
+          }
450
+     }
451
+     $mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' );
452
+     add_action( 'lsx_nav_before', 'lsx_header_search_form', 0 );
453 453
 endif;
454 454
 
455 455
 // Add entry meta to single post if active.
456 456
 if ( ! function_exists( 'lsx_add_entry_meta' ) ) :
457
-	function lsx_add_entry_meta() {
458
-		$disable_title = get_post_meta( get_the_ID(), 'lsx_disable_title', true );
459
-		if ( 'yes' === $disable_title && is_singular( 'post' ) ) {
460
-			return;
461
-		}
462
-		if ( is_single() && is_singular( 'post' ) ) {
463
-			?>
457
+     function lsx_add_entry_meta() {
458
+          $disable_title = get_post_meta( get_the_ID(), 'lsx_disable_title', true );
459
+          if ( 'yes' === $disable_title && is_singular( 'post' ) ) {
460
+               return;
461
+          }
462
+          if ( is_single() && is_singular( 'post' ) ) {
463
+               ?>
464 464
 			<div class="entry-meta">
465 465
 				<?php lsx_post_meta_single_top(); ?>
466 466
 			</div><!-- .entry-meta -->
467 467
 			<?php
468
-		}
469
-	}
470
-	add_action( 'lsx_entry_top', 'lsx_add_entry_meta', 999 );
468
+          }
469
+     }
470
+     add_action( 'lsx_entry_top', 'lsx_add_entry_meta', 999 );
471 471
 endif;
Please login to merge, or discard this patch.
includes/extras.php 1 patch
Indentation   +460 added lines, -460 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@  discard block
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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 ) {
96
-			$classes[] = 'top-menu-fixed';
97
-		}
95
+          if ( false !== $fixed_header ) {
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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,33 +351,33 @@  discard block
 block discarded – undo
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;
373
-		}
374
-
375
-		// Single projects will still have banners.
376
-		if ( function_exists( 'has_blocks' ) && has_blocks() && ( is_singular( 'project' ) ) ) {
377
-			$disable = false;
378
-		}
379
-		return $disable;
380
-	}
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
+          }
374
+
375
+          // Single projects will still have banners.
376
+          if ( function_exists( 'has_blocks' ) && has_blocks() && ( is_singular( 'project' ) ) ) {
377
+               $disable = false;
378
+          }
379
+          return $disable;
380
+     }
381 381
 
382 382
 endif;
383 383
 
@@ -385,19 +385,19 @@  discard block
 block discarded – undo
385 385
 
386 386
 if ( ! function_exists( 'lsx_form_submit_button' ) ) :
387 387
 
388
-	/**
389
-	 * filter the Gravity Forms button type.
390
-	 *
391
-	 * @package    lsx
392
-	 * @subpackage extras
393
-	 *
394
-	 * @param  $button String
395
-	 * @param  $form   Object
396
-	 * @return String
397
-	 */
398
-	function lsx_form_submit_button( $button, $form ) {
399
-		return "<button class='btn btn-primary' id='gform_submit_button_{$form["id"]}'><span>Submit</span></button>";
400
-	}
388
+     /**
389
+      * filter the Gravity Forms button type.
390
+      *
391
+      * @package    lsx
392
+      * @subpackage extras
393
+      *
394
+      * @param  $button String
395
+      * @param  $form   Object
396
+      * @return String
397
+      */
398
+     function lsx_form_submit_button( $button, $form ) {
399
+          return "<button class='btn btn-primary' id='gform_submit_button_{$form["id"]}'><span>Submit</span></button>";
400
+     }
401 401
 
402 402
 endif;
403 403
 
@@ -405,15 +405,15 @@  discard block
 block discarded – undo
405 405
 
406 406
 if ( ! function_exists( 'lsx_excerpt_more' ) ) :
407 407
 
408
-	/**
409
-	 * Replaces the excerpt "more" text by a link.
410
-	 *
411
-	 * @package    lsx
412
-	 * @subpackage extras
413
-	 */
414
-	function lsx_excerpt_more( $more ) {
415
-		return '...';
416
-	}
408
+     /**
409
+      * Replaces the excerpt "more" text by a link.
410
+      *
411
+      * @package    lsx
412
+      * @subpackage extras
413
+      */
414
+     function lsx_excerpt_more( $more ) {
415
+          return '...';
416
+     }
417 417
 
418 418
 endif;
419 419
 
@@ -421,50 +421,50 @@  discard block
 block discarded – undo
421 421
 
422 422
 if ( ! function_exists( 'lsx_the_excerpt_filter' ) ) :
423 423
 
424
-	/**
425
-	 * Add a continue reading link to the excerpt.
426
-	 *
427
-	 * @package    lsx
428
-	 * @subpackage extras
429
-	 */
430
-	function lsx_the_excerpt_filter( $excerpt ) {
431
-
432
-		$post_formats = array(
433
-			'aside'   => 'aside',
434
-			'gallery' => 'gallery',
435
-			'link'    => 'link',
436
-			'image'   => 'image',
437
-			'quote'   => 'quote',
438
-			'status'  => 'status',
439
-			'video'   => 'video',
440
-			'audio'   => 'audio',
441
-		);
442
-
443
-		$show_full_content = has_post_format( apply_filters( 'lsx_the_excerpt_filter_post_types', $post_formats ) );
444
-
445
-		if ( ! $show_full_content ) {
446
-			if ( '' !== $excerpt && ! stristr( $excerpt, 'moretag' ) ) {
447
-				$pagination = wp_link_pages(
448
-					array(
449
-						'before'      => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">',
450
-						'after'       => '</div></div>',
451
-						'link_before' => '<span>',
452
-						'link_after'  => '</span>',
453
-						'echo'        => 0,
454
-					)
455
-				);
456
-
457
-				if ( ! empty( $pagination ) ) {
458
-					$excerpt .= $pagination;
459
-				} else {
460
-					$excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>';
461
-					$excerpt .= apply_filters( 'excerpt_more_p', $excerpt_more );
462
-				}
463
-			}
464
-		}
465
-
466
-		return $excerpt;
467
-	}
424
+     /**
425
+      * Add a continue reading link to the excerpt.
426
+      *
427
+      * @package    lsx
428
+      * @subpackage extras
429
+      */
430
+     function lsx_the_excerpt_filter( $excerpt ) {
431
+
432
+          $post_formats = array(
433
+               'aside'   => 'aside',
434
+               'gallery' => 'gallery',
435
+               'link'    => 'link',
436
+               'image'   => 'image',
437
+               'quote'   => 'quote',
438
+               'status'  => 'status',
439
+               'video'   => 'video',
440
+               'audio'   => 'audio',
441
+          );
442
+
443
+          $show_full_content = has_post_format( apply_filters( 'lsx_the_excerpt_filter_post_types', $post_formats ) );
444
+
445
+          if ( ! $show_full_content ) {
446
+               if ( '' !== $excerpt && ! stristr( $excerpt, 'moretag' ) ) {
447
+                    $pagination = wp_link_pages(
448
+                         array(
449
+                              'before'      => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">',
450
+                              'after'       => '</div></div>',
451
+                              'link_before' => '<span>',
452
+                              'link_after'  => '</span>',
453
+                              'echo'        => 0,
454
+                         )
455
+                    );
456
+
457
+                    if ( ! empty( $pagination ) ) {
458
+                         $excerpt .= $pagination;
459
+                    } else {
460
+                         $excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>';
461
+                         $excerpt .= apply_filters( 'excerpt_more_p', $excerpt_more );
462
+                    }
463
+               }
464
+          }
465
+
466
+          return $excerpt;
467
+     }
468 468
 
469 469
 endif;
470 470
 
@@ -472,29 +472,29 @@  discard block
 block discarded – undo
472 472
 
473 473
 if ( ! function_exists( 'lsx_full_width_widget_classes' ) ) :
474 474
 
475
-	/**
476
-	 * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
477
-	 *
478
-	 * @package    lsx
479
-	 * @subpackage extras
480
-	 */
481
-	function lsx_full_width_widget_classes( $params ) {
482
-		if ( is_admin() ) {
483
-			return $params;
484
-		}
475
+     /**
476
+      * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
477
+      *
478
+      * @package    lsx
479
+      * @subpackage extras
480
+      */
481
+     function lsx_full_width_widget_classes( $params ) {
482
+          if ( is_admin() ) {
483
+               return $params;
484
+          }
485 485
 
486
-		global $wp_registered_widgets;
486
+          global $wp_registered_widgets;
487 487
 
488
-		$widget_id   = $params[0]['widget_id'];
489
-		$widget_name = $params[0]['widget_name'];
488
+          $widget_id   = $params[0]['widget_id'];
489
+          $widget_name = $params[0]['widget_name'];
490 490
 
491
-		if ( 'Text' === $widget_name ) {
492
-			$wp_registered_widgets[ $widget_id ]['original_callback'] = $wp_registered_widgets[ $widget_id ]['callback'];
493
-			$wp_registered_widgets[ $widget_id ]['callback']          = 'lsx_full_width_widget_custom_callback';
494
-		}
491
+          if ( 'Text' === $widget_name ) {
492
+               $wp_registered_widgets[ $widget_id ]['original_callback'] = $wp_registered_widgets[ $widget_id ]['callback'];
493
+               $wp_registered_widgets[ $widget_id ]['callback']          = 'lsx_full_width_widget_custom_callback';
494
+          }
495 495
 
496
-		return $params;
497
-	}
496
+          return $params;
497
+     }
498 498
 
499 499
 endif;
500 500
 
@@ -502,55 +502,55 @@  discard block
 block discarded – undo
502 502
 
503 503
 if ( ! function_exists( 'lsx_full_width_widget_custom_callback' ) ) :
504 504
 
505
-	/**
506
-	 * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
507
-	 *
508
-	 * @package    lsx
509
-	 * @subpackage extras
510
-	 */
511
-	function full_width_widget_custom_callback() {
512
-		global $wp_registered_widgets;
505
+     /**
506
+      * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
507
+      *
508
+      * @package    lsx
509
+      * @subpackage extras
510
+      */
511
+     function full_width_widget_custom_callback() {
512
+          global $wp_registered_widgets;
513 513
 
514
-		$original_callback_params = func_get_args();
515
-		$widget_id                = $original_callback_params[0]['widget_id'];
514
+          $original_callback_params = func_get_args();
515
+          $widget_id                = $original_callback_params[0]['widget_id'];
516 516
 
517
-		$original_callback                               = $wp_registered_widgets[ $widget_id ]['original_callback'];
518
-		$wp_registered_widgets[ $widget_id ]['callback'] = $original_callback;
517
+          $original_callback                               = $wp_registered_widgets[ $widget_id ]['original_callback'];
518
+          $wp_registered_widgets[ $widget_id ]['callback'] = $original_callback;
519 519
 
520
-		$widget_id_base = $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base;
520
+          $widget_id_base = $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base;
521 521
 
522
-		$widget_classname = '';
522
+          $widget_classname = '';
523 523
 
524
-		if ( is_callable( $original_callback ) ) {
525
-			ob_start();
526
-			call_user_func_array( $original_callback, $original_callback_params );
527
-			$widget_output = ob_get_clean();
524
+          if ( is_callable( $original_callback ) ) {
525
+               ob_start();
526
+               call_user_func_array( $original_callback, $original_callback_params );
527
+               $widget_output = ob_get_clean();
528 528
 
529
-			echo wp_kses_post( apply_filters( 'lsx_widget_output', $widget_output, $widget_id_base, $widget_classname, $widget_id ) );
530
-		}
531
-	}
529
+               echo wp_kses_post( apply_filters( 'lsx_widget_output', $widget_output, $widget_id_base, $widget_classname, $widget_id ) );
530
+          }
531
+     }
532 532
 
533 533
 endif;
534 534
 
535 535
 if ( ! function_exists( 'lsx_full_width_widget_output' ) ) :
536 536
 
537
-	/**
538
-	 * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
539
-	 *
540
-	 * @package    lsx
541
-	 * @subpackage extras
542
-	 */
543
-	function lsx_full_width_widget_output( $widget_output, $widget_id_base, $widget_id ) {
544
-		if ( 'text' === $widget_id_base ) {
545
-			if ( false !== strpos( $widget_output, '<div class="lsx-full-width-alt">' ) ) {
546
-				$widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width_alt"', $widget_output );
547
-			} elseif ( false !== strpos( $widget_output, '<div class="lsx-full-width">' ) ) {
548
-				$widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width"', $widget_output );
549
-			}
550
-		}
551
-
552
-		return $widget_output;
553
-	}
537
+     /**
538
+      * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
539
+      *
540
+      * @package    lsx
541
+      * @subpackage extras
542
+      */
543
+     function lsx_full_width_widget_output( $widget_output, $widget_id_base, $widget_id ) {
544
+          if ( 'text' === $widget_id_base ) {
545
+               if ( false !== strpos( $widget_output, '<div class="lsx-full-width-alt">' ) ) {
546
+                    $widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width_alt"', $widget_output );
547
+               } elseif ( false !== strpos( $widget_output, '<div class="lsx-full-width">' ) ) {
548
+                    $widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width"', $widget_output );
549
+               }
550
+          }
551
+
552
+          return $widget_output;
553
+     }
554 554
 
555 555
 endif;
556 556
 
@@ -560,29 +560,29 @@  discard block
 block discarded – undo
560 560
  * Check if the content has a restricted post format that needs to show a full excerpt.
561 561
  */
562 562
 function lsx_post_format_force_content_on_list() {
563
-	$post_formats = apply_filters( 'lsx_post_format_force_content_on_list',
564
-		array(
565
-			'video' => 'video',
566
-			'audio' => 'audio',
567
-			'quote' => 'quote',
568
-			'link'  => 'link',
569
-		)
570
-	);
571
-	$return       = false;
572
-	if ( ! has_post_format( $post_formats ) ) {
573
-		$return = true;
574
-	}
575
-	return $return;
563
+     $post_formats = apply_filters( 'lsx_post_format_force_content_on_list',
564
+          array(
565
+               'video' => 'video',
566
+               'audio' => 'audio',
567
+               'quote' => 'quote',
568
+               'link'  => 'link',
569
+          )
570
+     );
571
+     $return       = false;
572
+     if ( ! has_post_format( $post_formats ) ) {
573
+          $return = true;
574
+     }
575
+     return $return;
576 576
 }
577 577
 
578 578
 /**
579 579
  * Remove the Hentry Class Every
580 580
  */
581 581
 function lsx_remove_hentry( $classes ) {
582
-	if ( 'post' !== get_post_type() ) {
583
-		$classes = array_diff( $classes, array( 'hentry' ) );
584
-	}
585
-	return $classes;
582
+     if ( 'post' !== get_post_type() ) {
583
+          $classes = array_diff( $classes, array( 'hentry' ) );
584
+     }
585
+     return $classes;
586 586
 }
587 587
 add_filter( 'post_class', 'lsx_remove_hentry' );
588 588
 
@@ -590,12 +590,12 @@  discard block
 block discarded – undo
590 590
  * Strip Excerpts.
591 591
  */
592 592
 function lsx_strip_excerpt( $content ) {
593
-	if ( is_search() || is_archive() || ( is_blog_installed() && ! is_single() && ! is_page() ) ) {
594
-		$content = strip_shortcodes( $content );
595
-		$content = str_replace( ']]>', ']]&gt;', $content );
596
-		$content = strip_tags( $content );
597
-	}
598
-	return $content;
593
+     if ( is_search() || is_archive() || ( is_blog_installed() && ! is_single() && ! is_page() ) ) {
594
+          $content = strip_shortcodes( $content );
595
+          $content = str_replace( ']]>', ']]&gt;', $content );
596
+          $content = strip_tags( $content );
597
+     }
598
+     return $content;
599 599
 }
600 600
 add_filter( 'the_content', 'lsx_strip_excerpt' );
601 601
 
@@ -603,11 +603,11 @@  discard block
 block discarded – undo
603 603
  * Disable Gutenberg for LSX Custom Post Types.
604 604
  */
605 605
 function lsx_disable_gutenberg_product_type( $is_enabled, $post_type ) {
606
-	if ( 'testimonial' === $post_type || 'team' === $post_type || 'project' === $post_type ) {
607
-		return false;
608
-	}
606
+     if ( 'testimonial' === $post_type || 'team' === $post_type || 'project' === $post_type ) {
607
+          return false;
608
+     }
609 609
 
610
-	return $is_enabled;
610
+     return $is_enabled;
611 611
 }
612 612
 add_filter( 'gutenberg_add_edit_link_for_post_type', 'lsx_disable_gutenberg_product_type', 10, 2 );
613 613
 
@@ -619,33 +619,33 @@  discard block
 block discarded – undo
619 619
  */
620 620
 function lsx_breadcrumbs_blog_link( $crumbs ) {
621 621
 
622
-	$show_on_front = get_option( 'show_on_front' );
623
-
624
-	if ( 'page' === $show_on_front && ( is_category() || is_tag() ) ) {
625
-
626
-		$blog_page = get_option( 'page_for_posts' );
627
-		if ( false !== $blog_page && '' !== $blog_page ) {
628
-
629
-			$new_crumbs    = array();
630
-			$new_crumbs[0] = $crumbs[0];
631
-
632
-			if ( function_exists( 'woocommerce_breadcrumb' ) ) {
633
-				$new_crumbs[1] = array(
634
-					0 => get_the_title( $blog_page ),
635
-					1 => get_permalink( $blog_page ),
636
-				);
637
-			} else {
638
-				$new_crumbs[1] = array(
639
-					'text' => get_the_title( $blog_page ),
640
-					'url'  => get_permalink( $blog_page ),
641
-				);
642
-			}
643
-			$new_crumbs[2] = $crumbs[1];
644
-			$crumbs        = $new_crumbs;
645
-
646
-		}
647
-	}
648
-	return $crumbs;
622
+     $show_on_front = get_option( 'show_on_front' );
623
+
624
+     if ( 'page' === $show_on_front && ( is_category() || is_tag() ) ) {
625
+
626
+          $blog_page = get_option( 'page_for_posts' );
627
+          if ( false !== $blog_page && '' !== $blog_page ) {
628
+
629
+               $new_crumbs    = array();
630
+               $new_crumbs[0] = $crumbs[0];
631
+
632
+               if ( function_exists( 'woocommerce_breadcrumb' ) ) {
633
+                    $new_crumbs[1] = array(
634
+                         0 => get_the_title( $blog_page ),
635
+                         1 => get_permalink( $blog_page ),
636
+                    );
637
+               } else {
638
+                    $new_crumbs[1] = array(
639
+                         'text' => get_the_title( $blog_page ),
640
+                         'url'  => get_permalink( $blog_page ),
641
+                    );
642
+               }
643
+               $new_crumbs[2] = $crumbs[1];
644
+               $crumbs        = $new_crumbs;
645
+
646
+          }
647
+     }
648
+     return $crumbs;
649 649
 }
650 650
 add_filter( 'wpseo_breadcrumb_links', 'lsx_breadcrumbs_blog_link', 30, 1 );
651 651
 add_filter( 'woocommerce_get_breadcrumb', 'lsx_breadcrumbs_blog_link', 30, 1 );
@@ -657,20 +657,20 @@  discard block
 block discarded – undo
657 657
  */
658 658
 function lsx_cover_template_custom_enqueue() {
659 659
 
660
-	if ( ! is_page_template( 'page-templates/template-cover.php' ) ) {
661
-		return;
662
-	}
663
-	$color_overlay_classes = '';
660
+     if ( ! is_page_template( 'page-templates/template-cover.php' ) ) {
661
+          return;
662
+     }
663
+     $color_overlay_classes = '';
664 664
 
665
-	$cover_text_color = get_theme_mod( 'lsx_cover_template_overlay_text_color' );
665
+     $cover_text_color = get_theme_mod( 'lsx_cover_template_overlay_text_color' );
666 666
 
667
-	$color_overlay_opacity  = get_theme_mod( 'lsx_cover_template_overlay_opacity' );
668
-	$color_overlay_opacity  = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity;
669
-	$color_overlay_opacity  = $color_overlay_opacity / 100;
670
-	$color_overlay_classes .= $color_overlay_opacity;
667
+     $color_overlay_opacity  = get_theme_mod( 'lsx_cover_template_overlay_opacity' );
668
+     $color_overlay_opacity  = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity;
669
+     $color_overlay_opacity  = $color_overlay_opacity / 100;
670
+     $color_overlay_classes .= $color_overlay_opacity;
671 671
 
672
-	$custom_css       = ".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 .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};}";
673
-	wp_add_inline_style( 'lsx_main', $custom_css );
672
+     $custom_css       = ".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 .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};}";
673
+     wp_add_inline_style( 'lsx_main', $custom_css );
674 674
 
675 675
 }
676 676
 add_action( 'wp_enqueue_scripts', 'lsx_cover_template_custom_enqueue' );
@@ -681,8 +681,8 @@  discard block
 block discarded – undo
681 681
  * @return bool True if it's a REST API request, false otherwise.
682 682
  */
683 683
 function lsx_is_rest_api_request() {
684
-	$rest_helper = LSX_Rest_Helper::get_instance();
685
-	return $rest_helper->is_rest_api_request();
684
+     $rest_helper = LSX_Rest_Helper::get_instance();
685
+     return $rest_helper->is_rest_api_request();
686 686
 }
687 687
 
688 688
 /**
@@ -692,8 +692,8 @@  discard block
 block discarded – undo
692 692
  * @return void
693 693
  */
694 694
 function lsx_custom_logo_attributes( $attributes ) {
695
-	$attributes['loading'] = 'eager';
696
-	return $attributes;
695
+     $attributes['loading'] = 'eager';
696
+     return $attributes;
697 697
 }
698 698
 add_filter( 'get_custom_logo_image_attributes', 'lsx_custom_logo_attributes' );
699 699
 
@@ -703,9 +703,9 @@  discard block
 block discarded – undo
703 703
  * @return void
704 704
  */
705 705
 function lsx_blockusers_init() {
706
-	if ( is_admin() && ( current_user_can( 'teacher' ) || current_user_can( 'customer' ) ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
707
-		wp_safe_redirect( home_url() );
708
-		exit;
709
-	}
706
+     if ( is_admin() && ( current_user_can( 'teacher' ) || current_user_can( 'customer' ) ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
707
+          wp_safe_redirect( home_url() );
708
+          exit;
709
+     }
710 710
 }
711 711
 add_action( 'init', 'lsx_blockusers_init' );
Please login to merge, or discard this patch.
includes/scripts.php 1 patch
Indentation   +84 added lines, -84 removed lines patch added patch discarded remove patch
@@ -7,21 +7,21 @@  discard block
 block discarded – undo
7 7
  */
8 8
 
9 9
 if ( ! defined( 'ABSPATH' ) ) {
10
-	exit;
10
+     exit;
11 11
 }
12 12
 
13 13
 if ( ! function_exists( 'lsx_scripts' ) ) :
14 14
 
15
-	/**
16
-	 * Enqueue scripts, fonts and styles.
17
-	 *
18
-	 * @package    lsx
19
-	 * @subpackage scripts
20
-	 */
21
-	function lsx_scripts() {
22
-		lsx_scripts_add_styles();
23
-		lsx_scripts_add_scripts();
24
-	}
15
+     /**
16
+      * Enqueue scripts, fonts and styles.
17
+      *
18
+      * @package    lsx
19
+      * @subpackage scripts
20
+      */
21
+     function lsx_scripts() {
22
+          lsx_scripts_add_styles();
23
+          lsx_scripts_add_scripts();
24
+     }
25 25
 
26 26
 endif;
27 27
 
@@ -29,15 +29,15 @@  discard block
 block discarded – undo
29 29
 
30 30
 if ( ! function_exists( 'lsx_admin_scripts' ) ) :
31 31
 
32
-	/**
33
-	 * Enqueue scripts (admin).
34
-	 *
35
-	 * @package    lsx
36
-	 * @subpackage scripts
37
-	 */
38
-	function lsx_admin_scripts() {
39
-		wp_enqueue_script( 'lsx-admin', get_template_directory_uri() . '/assets/js/admin/lsx-admin.js', array( 'jquery' ), LSX_VERSION, true );
40
-	}
32
+     /**
33
+      * Enqueue scripts (admin).
34
+      *
35
+      * @package    lsx
36
+      * @subpackage scripts
37
+      */
38
+     function lsx_admin_scripts() {
39
+          wp_enqueue_script( 'lsx-admin', get_template_directory_uri() . '/assets/js/admin/lsx-admin.js', array( 'jquery' ), LSX_VERSION, true );
40
+     }
41 41
 
42 42
 endif;
43 43
 
@@ -45,84 +45,84 @@  discard block
 block discarded – undo
45 45
 
46 46
 if ( ! function_exists( 'lsx_scripts_add_styles' ) ) :
47 47
 
48
-	/**
49
-	 * Enqueue styles.
50
-	 *
51
-	 * @package    lsx
52
-	 * @subpackage scripts
53
-	 */
54
-	function lsx_scripts_add_styles() {
55
-		wp_enqueue_style( 'lsx_fonts', get_template_directory_uri() . '/assets/css/lsx-fonts.css', array(), LSX_VERSION );
48
+     /**
49
+      * Enqueue styles.
50
+      *
51
+      * @package    lsx
52
+      * @subpackage scripts
53
+      */
54
+     function lsx_scripts_add_styles() {
55
+          wp_enqueue_style( 'lsx_fonts', get_template_directory_uri() . '/assets/css/lsx-fonts.css', array(), LSX_VERSION );
56 56
 
57
-		wp_register_style( 'fontawesome', get_template_directory_uri() . '/assets/css/vendor/font-awesome.css', array(), LSX_VERSION );
58
-		wp_style_add_data( 'fontawesome', 'rtl', 'replace' );
57
+          wp_register_style( 'fontawesome', get_template_directory_uri() . '/assets/css/vendor/font-awesome.css', array(), LSX_VERSION );
58
+          wp_style_add_data( 'fontawesome', 'rtl', 'replace' );
59 59
 
60
-		wp_register_style( 'bootstrap', get_template_directory_uri() . '/assets/css/vendor/bootstrap.css', array(), LSX_VERSION );
61
-		wp_style_add_data( 'bootstrap', 'rtl', 'replace' );
60
+          wp_register_style( 'bootstrap', get_template_directory_uri() . '/assets/css/vendor/bootstrap.css', array(), LSX_VERSION );
61
+          wp_style_add_data( 'bootstrap', 'rtl', 'replace' );
62 62
 
63
-		wp_enqueue_style( 'lsx_main', get_template_directory_uri() . '/assets/css/lsx.css', array( 'lsx_fonts', 'fontawesome', 'bootstrap'/*, 'slick'*/ ), LSX_VERSION );
64
-		wp_enqueue_style( 'lsx_gutenberg', get_template_directory_uri() . '/assets/css/gutenberg.css', array( 'lsx_main' ), LSX_VERSION );
63
+          wp_enqueue_style( 'lsx_main', get_template_directory_uri() . '/assets/css/lsx.css', array( 'lsx_fonts', 'fontawesome', 'bootstrap'/*, 'slick'*/ ), LSX_VERSION );
64
+          wp_enqueue_style( 'lsx_gutenberg', get_template_directory_uri() . '/assets/css/gutenberg.css', array( 'lsx_main' ), LSX_VERSION );
65 65
 
66
-		wp_style_add_data( 'lsx_main', 'rtl', 'replace' );
67
-	}
66
+          wp_style_add_data( 'lsx_main', 'rtl', 'replace' );
67
+     }
68 68
 
69 69
 endif;
70 70
 
71 71
 if ( ! function_exists( 'lsx_scripts_add_scripts' ) ) :
72 72
 
73
-	/**
74
-	 * Enqueue scripts.
75
-	 *
76
-	 * @package    lsx
77
-	 * @subpackage scripts
78
-	 */
79
-	function lsx_scripts_add_scripts() {
80
-		if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
81
-			wp_enqueue_script( 'comment-reply' );
82
-		}
83
-
84
-		wp_enqueue_script( 'platform', get_template_directory_uri() . '/assets/js/vendor/platform.min.js', array(), LSX_VERSION, true );
85
-		wp_enqueue_script( 'bootstrap', get_template_directory_uri() . '/assets/js/vendor/bootstrap.min.js', array( 'jquery' ), LSX_VERSION, true );
86
-
87
-		wp_enqueue_script( 'imagesLoaded', get_template_directory_uri() . '/assets/js/vendor/imagesloaded.pkgd.min.js', array( 'masonry' ), LSX_VERSION, true );
88
-		wp_enqueue_script( 'scrolltofixed', get_template_directory_uri() . '/assets/js/vendor/jquery-scrolltofixed-min.js', array( 'jquery' ), LSX_VERSION, true );
89
-		wp_enqueue_script( 'slick', get_template_directory_uri() . '/assets/js/vendor/slick.min.js', array( 'jquery' ), LSX_VERSION, true );
90
-		wp_enqueue_script( 'slick-lightbox', get_template_directory_uri() . '/assets/js/vendor/slick-lightbox.min.js', array( 'jquery', 'slick' ), LSX_VERSION, true );
91
-		wp_enqueue_script( 'picturefill', get_template_directory_uri() . '/assets/js/vendor/picturefill.min.js', array(), LSX_VERSION, true );
92
-
93
-		if ( defined( 'SCRIPT_DEBUG' ) ) {
94
-			$prefix = 'src/';
95
-			$suffix = '';
96
-		} else {
97
-			$prefix = '';
98
-			$suffix = '.min';
99
-		}
100
-		wp_enqueue_script( 'lsx_script', get_template_directory_uri() . '/assets/js/' . $prefix . 'lsx' . $suffix . '.js', array( 'jquery', 'platform', 'bootstrap', 'masonry', 'imagesLoaded', 'scrolltofixed', 'slick', 'slick-lightbox', 'picturefill' ), LSX_VERSION, true );
101
-
102
-		$param_array = array(
103
-			'columns'            => apply_filters( 'lsx_archive_column_number', 3 ),
104
-			'stickyMenuSelector' => apply_filters( 'lsx_sticky_menu_selector', 'header.navbar' ),
105
-		);
106
-
107
-		wp_localize_script( 'lsx_script', 'lsx_params', $param_array );
108
-	}
73
+     /**
74
+      * Enqueue scripts.
75
+      *
76
+      * @package    lsx
77
+      * @subpackage scripts
78
+      */
79
+     function lsx_scripts_add_scripts() {
80
+          if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
81
+               wp_enqueue_script( 'comment-reply' );
82
+          }
83
+
84
+          wp_enqueue_script( 'platform', get_template_directory_uri() . '/assets/js/vendor/platform.min.js', array(), LSX_VERSION, true );
85
+          wp_enqueue_script( 'bootstrap', get_template_directory_uri() . '/assets/js/vendor/bootstrap.min.js', array( 'jquery' ), LSX_VERSION, true );
86
+
87
+          wp_enqueue_script( 'imagesLoaded', get_template_directory_uri() . '/assets/js/vendor/imagesloaded.pkgd.min.js', array( 'masonry' ), LSX_VERSION, true );
88
+          wp_enqueue_script( 'scrolltofixed', get_template_directory_uri() . '/assets/js/vendor/jquery-scrolltofixed-min.js', array( 'jquery' ), LSX_VERSION, true );
89
+          wp_enqueue_script( 'slick', get_template_directory_uri() . '/assets/js/vendor/slick.min.js', array( 'jquery' ), LSX_VERSION, true );
90
+          wp_enqueue_script( 'slick-lightbox', get_template_directory_uri() . '/assets/js/vendor/slick-lightbox.min.js', array( 'jquery', 'slick' ), LSX_VERSION, true );
91
+          wp_enqueue_script( 'picturefill', get_template_directory_uri() . '/assets/js/vendor/picturefill.min.js', array(), LSX_VERSION, true );
92
+
93
+          if ( defined( 'SCRIPT_DEBUG' ) ) {
94
+               $prefix = 'src/';
95
+               $suffix = '';
96
+          } else {
97
+               $prefix = '';
98
+               $suffix = '.min';
99
+          }
100
+          wp_enqueue_script( 'lsx_script', get_template_directory_uri() . '/assets/js/' . $prefix . 'lsx' . $suffix . '.js', array( 'jquery', 'platform', 'bootstrap', 'masonry', 'imagesLoaded', 'scrolltofixed', 'slick', 'slick-lightbox', 'picturefill' ), LSX_VERSION, true );
101
+
102
+          $param_array = array(
103
+               'columns'            => apply_filters( 'lsx_archive_column_number', 3 ),
104
+               'stickyMenuSelector' => apply_filters( 'lsx_sticky_menu_selector', 'header.navbar' ),
105
+          );
106
+
107
+          wp_localize_script( 'lsx_script', 'lsx_params', $param_array );
108
+     }
109 109
 
110 110
 endif;
111 111
 
112 112
 if ( ! function_exists( 'lsx_scripts_child_theme' ) ) :
113 113
 
114
-	/**
115
-	 * Enqueue scripts and styles (for child theme).
116
-	 *
117
-	 * @package    lsx
118
-	 * @subpackage scripts
119
-	 */
120
-	function lsx_scripts_child_theme() {
121
-		if ( is_child_theme() && file_exists( get_stylesheet_directory() . '/assets/css/custom.css' ) ) {
122
-			wp_enqueue_style( 'child-css', get_stylesheet_directory_uri() . '/assets/css/custom.css', array( 'lsx_main' ), LSX_VERSION );
123
-			wp_style_add_data( 'child-css', 'rtl', 'replace' );
124
-		}
125
-	}
114
+     /**
115
+      * Enqueue scripts and styles (for child theme).
116
+      *
117
+      * @package    lsx
118
+      * @subpackage scripts
119
+      */
120
+     function lsx_scripts_child_theme() {
121
+          if ( is_child_theme() && file_exists( get_stylesheet_directory() . '/assets/css/custom.css' ) ) {
122
+               wp_enqueue_style( 'child-css', get_stylesheet_directory_uri() . '/assets/css/custom.css', array( 'lsx_main' ), LSX_VERSION );
123
+               wp_style_add_data( 'child-css', 'rtl', 'replace' );
124
+          }
125
+     }
126 126
 
127 127
 endif;
128 128
 
Please login to merge, or discard this patch.
includes/customizer.php 1 patch
Indentation   +192 added lines, -192 removed lines patch added patch discarded remove patch
@@ -7,115 +7,115 @@  discard block
 block discarded – undo
7 7
  */
8 8
 
9 9
 if ( ! defined( 'ABSPATH' ) ) {
10
-	exit;
10
+     exit;
11 11
 }
12 12
 
13 13
 if ( ! function_exists( 'lsx_customizer_layout_controls' ) ) :
14 14
 
15
-	/**
16
-	 * Returns an array of the layout panel.
17
-	 *
18
-	 * @package    lsx
19
-	 * @subpackage customizer
20
-	 *
21
-	 * @return $lsx_controls array()
22
-	 */
23
-	function lsx_customizer_layout_controls( $lsx_controls ) {
24
-		$lsx_controls['sections']['lsx-layout'] = array(
25
-			'title'       => esc_html__( 'Layout', 'lsx' ),
26
-			'description' => esc_html__( 'Change the layout sitewide. If your homepage is set to use a page with a template, the following will not apply to it.', 'lsx' ),
27
-			'priority'    => 22,
28
-		);
29
-
30
-		$lsx_controls['settings']['lsx_header_layout'] = array(
31
-			'default'   => 'inline',
32
-			'type'      => 'theme_mod',
33
-			'transport' => 'postMessage',
34
-		);
35
-
36
-		$lsx_controls['fields']['lsx_header_layout'] = array(
37
-			'label'   => esc_html__( 'Header', 'lsx' ),
38
-			'section' => 'lsx-layout',
39
-			'control' => 'LSX_Customize_Header_Layout_Control',
40
-			'choices' => array(
41
-				'central',
42
-				'expanded',
43
-				'inline',
44
-			),
45
-		);
46
-
47
-		$lsx_controls['settings']['lsx_header_mobile_layout'] = array(
48
-			'default'   => 'navigation-bar',
49
-			'type'      => 'theme_mod',
50
-			'transport' => 'postMessage',
51
-		);
52
-
53
-		$lsx_controls['fields']['lsx_header_mobile_layout'] = array(
54
-			'label'   => esc_html__( 'Mobile Header', 'lsx' ),
55
-			'section' => 'lsx-layout',
56
-			'control' => 'LSX_Customize_Mobile_Header_Layout_Control',
57
-			'choices' => array(
58
-				'navigation-bar',
59
-				'hamburger',
60
-			),
61
-		);
62
-
63
-		$lsx_controls['settings']['lsx_layout'] = array(
64
-			'default'   => '1c',
65
-			'type'      => 'theme_mod',
66
-			'transport' => 'refresh',
67
-		);
68
-
69
-		$lsx_controls['fields']['lsx_layout'] = array(
70
-			'label'   => esc_html__( 'Body', 'lsx' ),
71
-			'section' => 'lsx-layout',
72
-			'control' => 'LSX_Customize_Layout_Control',
73
-			'choices' => array(
74
-				'1c',
75
-				'2cr',
76
-				'2cl',
77
-			),
78
-		);
79
-
80
-		$lsx_controls['settings']['lsx_header_fixed'] = array(
81
-			'default'           => false,
82
-			'sanitize_callback' => 'lsx_sanitize_checkbox',
83
-			'transport'         => 'postMessage',
84
-		);
85
-
86
-		$lsx_controls['fields']['lsx_header_fixed'] = array(
87
-			'label'   => esc_html__( 'Fixed Header', 'lsx' ),
88
-			'section' => 'lsx-layout',
89
-			'type'    => 'checkbox',
90
-		);
91
-
92
-		$lsx_controls['settings']['lsx_header_search'] = array(
93
-			'default'           => false,
94
-			'sanitize_callback' => 'lsx_sanitize_checkbox',
95
-			'transport'         => 'postMessage',
96
-		);
97
-
98
-		$lsx_controls['fields']['lsx_header_search'] = array(
99
-			'label'   => esc_html__( 'Search Box in Header', 'lsx' ),
100
-			'section' => 'lsx-layout',
101
-			'type'    => 'checkbox',
102
-		);
103
-
104
-		$lsx_controls['selective_refresh']['lsx_header_search'] = array(
105
-			'selector'        => '#lsx-header-search-css',
106
-			'render_callback' => function() {
107
-				$search_form = get_theme_mod( 'lsx_header_search' );
108
-
109
-				if ( false !== $search_form ) {
110
-					echo 'body #searchform { display: block; }';
111
-				} else {
112
-					echo 'body #searchform { display: none; }';
113
-				}
114
-			},
115
-		);
116
-
117
-		return $lsx_controls;
118
-	}
15
+     /**
16
+      * Returns an array of the layout panel.
17
+      *
18
+      * @package    lsx
19
+      * @subpackage customizer
20
+      *
21
+      * @return $lsx_controls array()
22
+      */
23
+     function lsx_customizer_layout_controls( $lsx_controls ) {
24
+          $lsx_controls['sections']['lsx-layout'] = array(
25
+               'title'       => esc_html__( 'Layout', 'lsx' ),
26
+               'description' => esc_html__( 'Change the layout sitewide. If your homepage is set to use a page with a template, the following will not apply to it.', 'lsx' ),
27
+               'priority'    => 22,
28
+          );
29
+
30
+          $lsx_controls['settings']['lsx_header_layout'] = array(
31
+               'default'   => 'inline',
32
+               'type'      => 'theme_mod',
33
+               'transport' => 'postMessage',
34
+          );
35
+
36
+          $lsx_controls['fields']['lsx_header_layout'] = array(
37
+               'label'   => esc_html__( 'Header', 'lsx' ),
38
+               'section' => 'lsx-layout',
39
+               'control' => 'LSX_Customize_Header_Layout_Control',
40
+               'choices' => array(
41
+                    'central',
42
+                    'expanded',
43
+                    'inline',
44
+               ),
45
+          );
46
+
47
+          $lsx_controls['settings']['lsx_header_mobile_layout'] = array(
48
+               'default'   => 'navigation-bar',
49
+               'type'      => 'theme_mod',
50
+               'transport' => 'postMessage',
51
+          );
52
+
53
+          $lsx_controls['fields']['lsx_header_mobile_layout'] = array(
54
+               'label'   => esc_html__( 'Mobile Header', 'lsx' ),
55
+               'section' => 'lsx-layout',
56
+               'control' => 'LSX_Customize_Mobile_Header_Layout_Control',
57
+               'choices' => array(
58
+                    'navigation-bar',
59
+                    'hamburger',
60
+               ),
61
+          );
62
+
63
+          $lsx_controls['settings']['lsx_layout'] = array(
64
+               'default'   => '1c',
65
+               'type'      => 'theme_mod',
66
+               'transport' => 'refresh',
67
+          );
68
+
69
+          $lsx_controls['fields']['lsx_layout'] = array(
70
+               'label'   => esc_html__( 'Body', 'lsx' ),
71
+               'section' => 'lsx-layout',
72
+               'control' => 'LSX_Customize_Layout_Control',
73
+               'choices' => array(
74
+                    '1c',
75
+                    '2cr',
76
+                    '2cl',
77
+               ),
78
+          );
79
+
80
+          $lsx_controls['settings']['lsx_header_fixed'] = array(
81
+               'default'           => false,
82
+               'sanitize_callback' => 'lsx_sanitize_checkbox',
83
+               'transport'         => 'postMessage',
84
+          );
85
+
86
+          $lsx_controls['fields']['lsx_header_fixed'] = array(
87
+               'label'   => esc_html__( 'Fixed Header', 'lsx' ),
88
+               'section' => 'lsx-layout',
89
+               'type'    => 'checkbox',
90
+          );
91
+
92
+          $lsx_controls['settings']['lsx_header_search'] = array(
93
+               'default'           => false,
94
+               'sanitize_callback' => 'lsx_sanitize_checkbox',
95
+               'transport'         => 'postMessage',
96
+          );
97
+
98
+          $lsx_controls['fields']['lsx_header_search'] = array(
99
+               'label'   => esc_html__( 'Search Box in Header', 'lsx' ),
100
+               'section' => 'lsx-layout',
101
+               'type'    => 'checkbox',
102
+          );
103
+
104
+          $lsx_controls['selective_refresh']['lsx_header_search'] = array(
105
+               'selector'        => '#lsx-header-search-css',
106
+               'render_callback' => function() {
107
+                    $search_form = get_theme_mod( 'lsx_header_search' );
108
+
109
+                    if ( false !== $search_form ) {
110
+                         echo 'body #searchform { display: block; }';
111
+                    } else {
112
+                         echo 'body #searchform { display: none; }';
113
+                    }
114
+               },
115
+          );
116
+
117
+          return $lsx_controls;
118
+     }
119 119
 
120 120
 endif;
121 121
 
@@ -123,80 +123,80 @@  discard block
 block discarded – undo
123 123
 
124 124
 if ( ! function_exists( 'lsx_customizer_template_cover_controls' ) ) :
125 125
 
126
-	/**
127
-	 * Returns an array of the Cover Template panel.
128
-	 *
129
-	 * @package    lsx
130
-	 * @subpackage customizer
131
-	 *
132
-	 * @return $lsx_controls array()
133
-	 */
134
-	function lsx_customizer_template_cover_controls( $lsx_controls ) {
135
-		$lsx_controls['sections']['lsx-cover-template'] = array(
136
-			'title'       => esc_html__( 'Cover Template Settings', 'lsx' ),
137
-			'description' => esc_html__( 'Change the cover template settings.', 'lsx' ),
138
-			'priority'    => 23,
139
-		);
140
-
141
-		$lsx_controls['settings']['lsx_cover_template_fixed_background'] = array(
142
-			'default'           => '1',
143
-			'sanitize_callback' => 'lsx_sanitize_checkbox',
144
-			'transport'         => 'postMessage',
145
-		);
146
-
147
-		$lsx_controls['fields']['lsx_cover_template_fixed_background'] = array(
148
-			'label'   => esc_html__( 'Fixed Background Image', 'lsx' ),
149
-			'section' => 'lsx-cover-template',
150
-			'type'    => 'checkbox',
151
-		);
152
-
153
-		$lsx_controls['settings']['lsx_cover_template_overlay_background_color'] = array(
154
-			'default'           => '#000000',
155
-			'sanitize_callback' => 'sanitize_hex_color',
156
-			'type'              => 'theme_mod',
157
-			'transport'         => 'postMessage',
158
-		);
159
-
160
-		$lsx_controls['fields']['lsx_cover_template_overlay_background_color'] = array(
161
-			'label'       => esc_html__( 'Overlay Background Color', 'lsx' ),
162
-			'description' => __( 'The color used for the overlay. Defaults to black.', 'lsx' ),
163
-			'section'     => 'lsx-cover-template',
164
-			'control'     => 'WP_Customize_Color_Control',
165
-		);
166
-
167
-		$lsx_controls['settings']['lsx_cover_template_overlay_text_color'] = array(
168
-			'default'           => '#ffffff',
169
-			'sanitize_callback' => 'sanitize_hex_color',
170
-			'type'              => 'theme_mod',
171
-			'transport'         => 'postMessage',
172
-		);
173
-
174
-		$lsx_controls['fields']['lsx_cover_template_overlay_text_color'] = (
175
-			array(
176
-				'label'       => __( 'Overlay Text Color', 'lsx' ),
177
-				'description' => __( 'The color used for the text in the overlay.', 'lsx' ),
178
-				'section'     => 'lsx-cover-template',
179
-				'control'     => 'WP_Customize_Color_Control',
180
-			)
181
-		);
182
-
183
-		$lsx_controls['settings']['lsx_cover_template_overlay_opacity'] = array(
184
-			'default'           => 80,
185
-			'sanitize_callback' => 'absint',
186
-			'transport'         => 'postMessage',
187
-		);
188
-
189
-		$lsx_controls['fields']['lsx_cover_template_overlay_opacity'] = (
190
-			array(
191
-				'label'       => __( 'Overlay Opacity', 'lsx' ),
192
-				'description' => __( 'Make sure that the contrast is high enough so that the text is readable.', 'lsx' ),
193
-				'section'     => 'lsx-cover-template',
194
-				'type'        => 'range',
195
-			)
196
-		);
197
-
198
-		return $lsx_controls;
199
-	}
126
+     /**
127
+      * Returns an array of the Cover Template panel.
128
+      *
129
+      * @package    lsx
130
+      * @subpackage customizer
131
+      *
132
+      * @return $lsx_controls array()
133
+      */
134
+     function lsx_customizer_template_cover_controls( $lsx_controls ) {
135
+          $lsx_controls['sections']['lsx-cover-template'] = array(
136
+               'title'       => esc_html__( 'Cover Template Settings', 'lsx' ),
137
+               'description' => esc_html__( 'Change the cover template settings.', 'lsx' ),
138
+               'priority'    => 23,
139
+          );
140
+
141
+          $lsx_controls['settings']['lsx_cover_template_fixed_background'] = array(
142
+               'default'           => '1',
143
+               'sanitize_callback' => 'lsx_sanitize_checkbox',
144
+               'transport'         => 'postMessage',
145
+          );
146
+
147
+          $lsx_controls['fields']['lsx_cover_template_fixed_background'] = array(
148
+               'label'   => esc_html__( 'Fixed Background Image', 'lsx' ),
149
+               'section' => 'lsx-cover-template',
150
+               'type'    => 'checkbox',
151
+          );
152
+
153
+          $lsx_controls['settings']['lsx_cover_template_overlay_background_color'] = array(
154
+               'default'           => '#000000',
155
+               'sanitize_callback' => 'sanitize_hex_color',
156
+               'type'              => 'theme_mod',
157
+               'transport'         => 'postMessage',
158
+          );
159
+
160
+          $lsx_controls['fields']['lsx_cover_template_overlay_background_color'] = array(
161
+               'label'       => esc_html__( 'Overlay Background Color', 'lsx' ),
162
+               'description' => __( 'The color used for the overlay. Defaults to black.', 'lsx' ),
163
+               'section'     => 'lsx-cover-template',
164
+               'control'     => 'WP_Customize_Color_Control',
165
+          );
166
+
167
+          $lsx_controls['settings']['lsx_cover_template_overlay_text_color'] = array(
168
+               'default'           => '#ffffff',
169
+               'sanitize_callback' => 'sanitize_hex_color',
170
+               'type'              => 'theme_mod',
171
+               'transport'         => 'postMessage',
172
+          );
173
+
174
+          $lsx_controls['fields']['lsx_cover_template_overlay_text_color'] = (
175
+               array(
176
+                    'label'       => __( 'Overlay Text Color', 'lsx' ),
177
+                    'description' => __( 'The color used for the text in the overlay.', 'lsx' ),
178
+                    'section'     => 'lsx-cover-template',
179
+                    'control'     => 'WP_Customize_Color_Control',
180
+               )
181
+          );
182
+
183
+          $lsx_controls['settings']['lsx_cover_template_overlay_opacity'] = array(
184
+               'default'           => 80,
185
+               'sanitize_callback' => 'absint',
186
+               'transport'         => 'postMessage',
187
+          );
188
+
189
+          $lsx_controls['fields']['lsx_cover_template_overlay_opacity'] = (
190
+               array(
191
+                    'label'       => __( 'Overlay Opacity', 'lsx' ),
192
+                    'description' => __( 'Make sure that the contrast is high enough so that the text is readable.', 'lsx' ),
193
+                    'section'     => 'lsx-cover-template',
194
+                    'type'        => 'range',
195
+               )
196
+          );
197
+
198
+          return $lsx_controls;
199
+     }
200 200
 
201 201
 endif;
202 202
 
@@ -205,19 +205,19 @@  discard block
 block discarded – undo
205 205
 
206 206
 if ( ! function_exists( 'lsx_get_customizer_controls' ) ) :
207 207
 
208
-	/**
209
-	 * Returns an array of $controls for the customizer class to generate.
210
-	 *
211
-	 * @package    lsx
212
-	 * @subpackage customizer
213
-	 *
214
-	 * @return $lsx_controls array()
215
-	 */
216
-	function lsx_get_customizer_controls() {
217
-		$lsx_controls = array();
218
-		$lsx_controls = apply_filters( 'lsx_customizer_controls', $lsx_controls );
219
-		return $lsx_controls;
220
-	}
208
+     /**
209
+      * Returns an array of $controls for the customizer class to generate.
210
+      *
211
+      * @package    lsx
212
+      * @subpackage customizer
213
+      *
214
+      * @return $lsx_controls array()
215
+      */
216
+     function lsx_get_customizer_controls() {
217
+          $lsx_controls = array();
218
+          $lsx_controls = apply_filters( 'lsx_customizer_controls', $lsx_controls );
219
+          return $lsx_controls;
220
+     }
221 221
 
222 222
 endif;
223 223
 
Please login to merge, or discard this patch.