PluginProbe
Post Grid Gutenberg Blocks – PostX / 5.0.41
Post Grid Gutenberg Blocks – PostX v5.0.41
5.0.41 5.0.39 5.0.38 5.0.37 5.0.36 5.0.35 5.0.34 5.0.33 5.0.32 5.0.31 5.0.30 5.0.29 5.0.28 5.0.27 5.0.26 5.0.25 5.0.23 5.0.24 5.0.22 5.0.21 5.0.20 5.0.19 5.0.18 5.0.17 2.1.1 All 238 releases
← All changes | blocks/template/heading.php +49 -16 2.1.15.0.41 View file →
@@ -1,18 +1,51 @@
1 1 <?php
2 -defined('ABSPATH') || exit;
2 +defined( 'ABSPATH' ) || exit;
3 3
4 -if ($attr['headingShow']) {
5 - $wraper_before .= '<div class="ultp-heading-wrap ultp-heading-'.$attr["headingStyle"].' ultp-heading-'.$attr["headingAlign"].'">';
6 - if ($attr['headingURL']) {
7 - $wraper_before .= '<'.$attr['headingTag'].' class="ultp-heading-inner"><a href="'.$attr["headingURL"].'"><span>'.$attr["headingText"].'</span></a></'.$attr['headingTag'].'>';
8 - } else {
9 - $wraper_before .= '<'.$attr['headingTag'].' class="ultp-heading-inner"><span>'.$attr["headingText"].'</span></'.$attr['headingTag'].'>';
10 - }
11 - if ($attr['headingStyle'] == 'style11' && $attr['headingURL'] && $attr['headingBtnText']) {
12 - $wraper_before .= '<a class="ultp-heading-btn" href="'.$attr['headingURL'].'">'.$attr["headingBtnText"].ultimate_post()->svg_icon('rightAngle2').'</a>';
13 - }
14 - if ($attr['subHeadingShow']) {
15 - $wraper_before .= '<div class="ultp-sub-heading"><div class="ultp-sub-heading-inner">'.$attr['subHeadingText'].'</div></div>';
16 - }
17 - $wraper_before .= '</div>';
18 -}
4 +global $post_id;
5 +$attr['headingStyle'] = sanitize_html_class( $attr['headingStyle'] );
6 +$attr['headingAlign'] = sanitize_html_class( $attr['headingAlign'] );
7 +$allowed_html_tags = ultimate_post()->ultp_allowed_html_tags();
8 +
9 +$finalHeadingText = $attr['headingText'];
10 +$finalHeadingURL = $attr['headingURL'];
11 +$finalSubHeadingText = $attr['subHeadingText'];
12 +
13 +// Dynamic Content
14 +if ( ultimate_post()->is_dc_active( $attr ) && isset( $attr['dc'] ) ) {
15 +
16 + $dc_text_val = \ULTP\DCService::get_dc_content_for_rich_text( $attr );
17 + $text = isset( $dc_text_val['0'] ) ? $dc_text_val['0'] : '';
18 + $url = isset( $dc_text_val['1'] ) ? $dc_text_val['1'] : '';
19 +
20 + // [ $text, $url ] = \ULTP\DCService::get_dc_content_for_rich_text( $attr ); array destructure is not support php 7
21 +
22 + if ( ! empty( $url ) ) {
23 + $finalHeadingURL = $url;
24 + }
25 +
26 + $finalHeadingText = \ULTP\DCService::replace( $finalHeadingText, $text );
27 +}
28 +
29 +$finalHeadingText = wp_kses( $finalHeadingText, $allowed_html_tags );
30 +$finalHeadingURL = esc_url( $finalHeadingURL );
31 +$finalSubHeadingText = wp_kses( $finalSubHeadingText, $allowed_html_tags );
32 +
33 +$attr['headingBtnText'] = wp_kses( $attr['headingBtnText'], $allowed_html_tags );
34 +$attr['headingTag'] = in_array( $attr['headingTag'], ultimate_post()->ultp_allowed_block_tags() ) ? $attr['headingTag'] : 'h2';
35 +
36 +if ( $attr['headingShow'] ) {
37 + $new_tab = isset( $attr['openInTab'] ) && $attr['openInTab'] == true ? 'target="_blank"' : '';
38 + $wraper_before .= '<div class="ultp-heading-wrap ultp-heading-' . $attr['headingStyle'] . ' ultp-heading-' . $attr['headingAlign'] . '">';
39 + if ( $finalHeadingURL ) {
40 + $wraper_before .= '<' . $attr['headingTag'] . ' class="ultp-heading-inner"><a href="' . $finalHeadingURL . '" ' . $new_tab . '><span>' . $finalHeadingText . '</span></a></' . $attr['headingTag'] . '>';
41 + } else {
42 + $wraper_before .= '<' . $attr['headingTag'] . ' class="ultp-heading-inner"><span>' . $finalHeadingText . '</span></' . $attr['headingTag'] . '>';
43 + }
44 + if ( $attr['headingStyle'] == 'style11' && $finalHeadingURL && $attr['headingBtnText'] ) {
45 + $wraper_before .= '<a class="ultp-heading-btn" href="' . $finalHeadingURL . '" ' . $new_tab . '>' . $attr['headingBtnText'] . ultimate_post()->get_svg_icon( 'rightAngle2' ) . '</a>';
46 + }
47 + if ( $attr['subHeadingShow'] ) {
48 + $wraper_before .= '<div class="ultp-sub-heading"><div class="ultp-sub-heading-inner">' . $finalSubHeadingText . '</div></div>';
49 + }
50 + $wraper_before .= '</div>';
51 +}