PluginProbe
BlockSpare – Gutenberg Blocks for News, Magazine, Blog & Business Websites / 2.1.2
BlockSpare – Gutenberg Blocks for News, Magazine, Blog & Business Websites v2.1.2
4.1.0 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.1.0 1.1.1 1.1.2 1.2.0 1.2.1 1.2.2 1.2.3 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 2.1.2 2.5.0 2.5.3 2.6.1 All 38 releases
blockspare / src / blocks / latest-posts-express-grid / index.php

index.php in BlockSpare – Gutenberg Blocks for News, Magazine, Blog & Business Websites 2.1.2, at src/blocks/latest-posts-express-grid/index.php

351 lines 16.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 if(!function_exists('blockspare_render_block_core_latest_posts_express_grid')){
4 function blockspare_render_block_core_latest_posts_express_grid($attributes)
5 {
6
7 ob_start();
8 $unq_class = mt_rand(100000,999999);
9 $blockuniqueclass = '';
10
11 if(!empty($attributes['uniqueClass'])){
12 $blockuniqueclass = $attributes['uniqueClass'];
13 }else{
14 $blockuniqueclass = 'blockspare-posts-block-list-'.$unq_class;
15 }
16
17 $design = 'blockspare-posts-block-latestpost-express-grid ';
18
19
20 $block_class = 'blockspare-posts-block-is-express';
21 if($attributes['enableEqualHeight']){
22 $block_class .= ' bs-has-equal-height';
23 }
24
25 if($attributes['displaySpotLightExceprt']){
26 $block_class .= ' has-spotlight-excerpt ';
27 }
28 $design .= $attributes['express'];
29 $blockName= 'express';
30
31 blockspare_query_loop_and_wrapper($attributes,$block_class,$design,$blockName);
32 $data_content = blockspare_latest_posts_style_control($blockuniqueclass ,$attributes);
33 $data_content .= ob_get_clean();
34 return $data_content;
35
36
37 }
38 }
39
40 /**
41 * Registers the post grid block on server
42 */
43
44 if(!function_exists('blockspare_register_block_core_latest_posts_express_grid')){
45 function blockspare_register_block_core_latest_posts_express_grid()
46 {
47
48 if (!function_exists('register_block_type')) {
49 return;
50 }
51
52
53 ob_start();
54 include BLOCKSPARE_PLUGIN_DIR . 'src/blocks/latest-posts-express-grid/block.json';
55 $metadata = json_decode(ob_get_clean(), true);
56
57 /* Block attributes */
58 register_block_type(
59 'blockspare/latest-posts-express-grid',
60 array(
61 'attributes' =>$metadata['attributes'],
62 'render_callback' => 'blockspare_render_block_core_latest_posts_express_grid',
63 )
64 );
65 }
66
67 add_action('init', 'blockspare_register_block_core_latest_posts_express_grid');
68 }
69
70
71 if(!function_exists('blockspare_latest_posts_style_control')){
72
73 function blockspare_latest_posts_style_control($blockuniqueclass ,$attributes){
74
75 $block_content ='';
76 $block_content .= '<style type="text/css">';
77 $block_content .= ' .' . $blockuniqueclass . '.blockspare-posts-block-latest-post-wrap{
78 margin-top:' . $attributes['marginTop'] . 'px;
79 margin-bottom:' . $attributes['marginBottom'] . 'px;
80 }';
81
82 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-content{
83 padding-top:' . $attributes['contentPaddingTop'] . 'px;
84 padding-right:' . $attributes['contentPaddingRight'] . 'px;
85 padding-bottom:' . $attributes['contentPaddingBottom'] . 'px;
86 padding-left:' . $attributes['contentPaddingLeft'] . 'px;
87 }';
88
89
90
91 if ($attributes['categoryLayoutOption'] == 'solid') {
92
93
94 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-category a{
95 color:' . $attributes['categoryTextColor'] . "!important" . ';
96 background-color:' . $attributes['categoryBackgroundColor'] . "!important" . ';
97 border-radius:' . $attributes['categoryBorderRadius'] . "px" . ';
98 }';
99
100 } else if ($attributes['categoryLayoutOption'] == 'border') {
101
102
103 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-category a{
104 color:' . $attributes['categoryTextColor'] . "!important" . ';
105 background-color:' . "transparent" . ';
106 border:' . "1px solid" . $attributes['categoryBorderColor'] . ';
107 border-radius:' . $attributes['categoryBorderRadius'] . "px" . ';
108 border-width:' . $attributes['categoryBorderWidth'] . "px" . ';
109 }';
110
111
112
113
114 } else {
115 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-category a{
116 color:' . $attributes['categoryTextColor'] . "!important" . ';
117 }';
118 }
119
120
121 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-category{
122 margin-top:' . $attributes['categoryMarginTop'] . 'px' . ';
123 margin-bottom:' . $attributes['categoryMarginBottom'] . 'px' . ';
124 }';
125
126
127 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-byline{
128
129 margin-top:' . $attributes['metaMarginTop'] . 'px' . ';
130 margin-bottom:' . $attributes['metaMarginBottom'] . 'px' . ';
131 }';
132
133
134 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-more-link{
135 margin-top:' . $attributes['moreLinkMarginTop'] . 'px' . ';
136 margin-bottom:' . $attributes['moreLinkMarginBottom'] . 'px' . ';
137 }';
138
139
140
141
142
143
144
145
146 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
147 color: ' . $attributes['postTitleColor'] . ';
148
149 }';
150
151 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-author a span{
152 color:' . $attributes['linkColor'] . ';
153 }';
154
155
156 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-more-link span{
157 color:' . $attributes['linkColor'] . ';
158 }';
159
160 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-date{
161 color:' . $attributes['generalColor'] . ';
162 }';
163
164 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-excerpt-content, '.' .' . $blockuniqueclass . ' .comment_count{
165 color:' . $attributes['generalColor'] . ';
166
167 }';
168
169
170 $layoutstyle = explode('-',$attributes['express']);
171
172 if($layoutstyle[6] >3){
173 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single .blockspare-posts-block-post-img img{
174 border-radius:' . $attributes['borderRadius'] . 'px'.';
175
176 }';
177 if($attributes['enableBoxShadow']){
178 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single .blockspare-posts-block-post-img img{
179 box-shadow: ' . $attributes['xOffset'] . 'px ' . $attributes['yOffset'] . 'px ' . $attributes['blur'] . 'px ' . $attributes['spread'] . 'px ' . $attributes['shadowColor'] . ';
180 }';
181 }
182 }else{
183 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single{
184 border-radius:' . $attributes['borderRadius'] . 'px'.';
185 background-color:'.$attributes['backGroundColor'].'
186 }';
187
188 if($attributes['enableBoxShadow']){
189 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single{
190 box-shadow: ' . $attributes['xOffset'] . 'px ' . $attributes['yOffset'] . 'px ' . $attributes['blur'] . 'px ' . $attributes['spread'] . 'px ' . $attributes['shadowColor'] . ';
191 }';
192 }
193
194
195 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-content{
196 padding-top:' . $attributes['contentPaddingTop'] . 'px;
197 padding-right:' . $attributes['contentPaddingRight'] . 'px;
198 padding-bottom:' . $attributes['contentPaddingBottom'] . 'px;
199 padding-left:' . $attributes['contentPaddingLeft'] . 'px;
200 }';
201
202 }
203
204
205
206
207
208
209 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title{
210 margin-top:' . $attributes['titleMarginTop'] . 'px' . ';
211 margin-bottom:' . $attributes['titleMarginBottom'] . 'px' . ';
212 }';
213
214
215 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-excerpt-content{
216 margin-top:' . $attributes['exceprtMarginTop'] . 'px' . ';
217 margin-bottom:' . $attributes['exceprtMarginBottom'] . 'px' . ';
218 }';
219
220
221
222 //Title Hover
223 if($attributes['titleOnHover']=='lpc-title-hover') {
224 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-content .blockspare-posts-block-title-link:hover span{
225 color: ' . $attributes['titleOnHoverColor'] . ';
226
227 }';
228 }
229
230 if($attributes['titleOnHover']=='lpc-title-border') {
231 $block_content .= ' .' . $blockuniqueclass . ' .lpc-title-border .blockspare-posts-block-post-grid-title .blockspare-posts-block-title-link span:hover{
232 box-shadow: inset 0 -2px 0 0 ' . $attributes['titleOnHoverColor'] . ';
233
234 }';
235 }
236
237
238 //Font Settings
239
240
241 if($attributes['express']!='blockspare-posts-block-express-grid-layout-3'&& $attributes['express']!='blockspare-posts-block-express-grid-layout-6' ){
242
243 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(1) .blockspare-posts-block-post-grid-title a span{
244
245 font-size: ' . $attributes['spostTitleFontSize'] . $attributes['titleFontSizeType'] . ';
246 '.bscheckFontfamily($attributes['spostTitleFontFamily']).';
247 font-weight: ' . $attributes['spostTitleFontWeight'] . ';
248 }';
249
250 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
251
252 font-size: ' . $attributes['postTitleFontSize'] . $attributes['titleFontSizeType'] . ';
253 '.bscheckFontfamily($attributes['titleFontFamily']).';
254 font-weight: ' . $attributes['titleFontWeight'] . ';
255 }';
256
257 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-content .blockspare-posts-block-post-grid-excerpt .blockspare-posts-block-post-grid-excerpt-content{
258 font-size:' . $attributes['descriptionFontSize'] . $attributes['descriptionFontSizeType'] . ';
259 '.bscheckFontfamily($attributes['descriptionFontFamily']).';
260 font-weight: ' . $attributes['descriptionFontWeight'] . ';
261 }';
262
263
264
265 $block_content .= '@media (max-width: 1025px) { ';
266
267 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(1) .blockspare-posts-block-post-grid-title a span{
268 font-size: ' . $attributes['spostTitleFontSizeTablet'] . $attributes['titleFontSizeType'] . ';
269 }';
270
271
272 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
273 font-size: ' . $attributes['titleFontSizeTablet'] . $attributes['titleFontSizeType'] . ';
274 }';
275
276 $block_content .= ' .' . $blockuniqueclass .' .blockspare-posts-block-post-content .blockspare-posts-block-post-grid-excerpt .blockspare-posts-block-post-grid-excerpt-content{
277 font-size:' . $attributes['descriptionFontSizeTablet'].$attributes['descriptionFontSizeType'].'
278 }';
279
280
281 $block_content .= '}';
282 $block_content .= '@media (max-width: 768px) { ';
283 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(1) .blockspare-posts-block-post-grid-title a span{
284 font-size: ' . $attributes['spostTitleFontSizeMobile'] . $attributes['titleFontSizeType'] . ';
285 }';
286
287 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
288 font-size: ' . $attributes['titleFontSizeMobile'] . $attributes['titleFontSizeType'] . ';
289 }';
290
291 $block_content .= '}';
292 }else{
293
294
295 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(1) .blockspare-posts-block-post-grid-title a span,'.' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(2) .blockspare-posts-block-post-grid-title a span{
296
297 font-size: ' . $attributes['spostTitleFontSize'] . $attributes['titleFontSizeType'] . ';
298
299 '.bscheckFontfamily($attributes['spostTitleFontFamily']).';
300 font-weight: ' . $attributes['spostTitleFontWeight'] . ';
301 }';
302
303 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
304
305 font-size: ' . $attributes['postTitleFontSize'] . $attributes['titleFontSizeType'] . ';
306 '.bscheckFontfamily($attributes['titleFontFamily']).';
307 font-weight: ' . $attributes['titleFontWeight'] . ';
308 }';
309
310
311 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-content .blockspare-posts-block-post-grid-excerpt .blockspare-posts-block-post-grid-excerpt-content{
312 font-size:' . $attributes['descriptionFontSize'] . $attributes['descriptionFontSizeType'] . ';
313 '.bscheckFontfamily($attributes['descriptionFontFamily']).';
314 font-weight: ' . $attributes['descriptionFontWeight'] . ';
315 }';
316
317
318
319 $block_content .= '@media (max-width: 1025px) { ';
320
321 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(1) .blockspare-posts-block-post-grid-title a span,'.' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(2) .blockspare-posts-block-post-grid-title a span{
322 font-size: ' . $attributes['spostTitleFontSizeTablet'] . $attributes['titleFontSizeType'] . ';
323 }';
324
325 $block_content .= ' .' . $blockuniqueclass .' .blockspare-posts-block-post-content .blockspare-posts-block-post-grid-excerpt .blockspare-posts-block-post-grid-excerpt-content{
326 font-size:' . $attributes['descriptionFontSizeTablet'].$attributes['descriptionFontSizeType'].'
327 }';
328
329 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
330 font-size: ' . $attributes['titleFontSizeTablet'] . $attributes['titleFontSizeType'] . ';
331 }';
332
333 $block_content .= '}';
334 $block_content .= '@media (max-width: 768px) { ';
335 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(1) .blockspare-posts-block-post-grid-title a span,'.' .' . $blockuniqueclass . ' .blockspare-posts-block-post-single:nth-child(2) .blockspare-posts-block-post-grid-title a span{
336 font-size: ' . $attributes['spostTitleFontSizeMobile'] . $attributes['titleFontSizeType'] . ';
337 }';
338
339 $block_content .= ' .' . $blockuniqueclass . ' .blockspare-posts-block-post-grid-title a span{
340 font-size: ' . $attributes['titleFontSizeMobile'] . $attributes['titleFontSizeType'] . ';
341 }';
342
343 $block_content .= '}';
344
345 }
346
347
348 $block_content .= '</style>';
349 return $block_content;
350 }
351 }