PluginProbe ʕ •ᴥ•ʔ
Ultimate Addons for Elementor / 2.3.0
Ultimate Addons for Elementor v2.3.0
2.8.8 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 v1.1.3 v1.1.4 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2 1.2.0 1.2.1 1.2.2 1.3.0 1.3.1 1.4.0 1.4.1 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.18 1.6.19 1.6.2 1.6.20 1.6.21 1.6.22 1.6.23 1.6.24 1.6.25 1.6.26 1.6.27 1.6.28 1.6.29 1.6.3 1.6.30 1.6.31 1.6.32 1.6.33 1.6.34 1.6.35 1.6.36 1.6.37 1.6.38 1.6.39 1.6.4 1.6.40 1.6.41 1.6.42 1.6.43 1.6.44 1.6.45 1.6.46 1.6.47 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.3.1 2.3.2 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.0 2.5.1 2.5.2
header-footer-elementor / themes / default / class-global-theme-compatibility.php
header-footer-elementor / themes / default Last commit date
class-global-theme-compatibility.php 1 year ago class-hfe-default-compat.php 1 year ago hfe-footer.php 5 years ago hfe-header.php 4 years ago
class-global-theme-compatibility.php
105 lines
1 <?php
2 /**
3 * Support all themes.
4 *
5 * @package header-footer-elementor
6 */
7
8 namespace HFE\Themes;
9
10 /**
11 * Global theme compatibility.
12 */
13 class Global_Theme_Compatibility {
14
15 /**
16 * Initiator
17 */
18 public function __construct() {
19 add_action( 'wp', [ $this, 'hooks' ] );
20 }
21
22 /**
23 * Run all the Actions / Filters.
24 *
25 * @return void
26 */
27 // phpcs:ignore
28 public function hooks(): void {
29 if ( hfe_header_enabled() ) {
30 // Replace header.php.
31 add_action( 'get_header', [ $this, 'option_override_header' ] );
32
33 add_action( 'wp_body_open', [ 'Header_Footer_Elementor', 'get_header_content' ] );
34 add_action( 'hfe_fallback_header', [ 'Header_Footer_Elementor', 'get_header_content' ] );
35 }
36
37 if ( hfe_is_before_footer_enabled() ) {
38 add_action( 'wp_footer', [ 'Header_Footer_Elementor', 'get_before_footer_content' ], 20 );
39 }
40
41 if ( hfe_footer_enabled() ) {
42 add_action( 'wp_footer', [ 'Header_Footer_Elementor', 'get_footer_content' ], 50 );
43 }
44
45 if ( hfe_header_enabled() || hfe_footer_enabled() ) {
46 add_action( 'wp_enqueue_scripts', [ $this, 'force_fullwidth' ] );
47 }
48 }
49
50 /**
51 * Force full width CSS for the header.
52 *
53 * @since 1.2.0
54 *
55 * // phpcs:ignore
56 * @return void
57 */
58 // phpcs:ignore
59 public function force_fullwidth(): void {
60 $css = '
61 .force-stretched-header {
62 width: 100vw;
63 position: relative;
64 margin-left: -50vw;
65 left: 50%;
66 }';
67
68 if ( true === hfe_header_enabled() ) {
69 $css .= 'header#masthead {
70 display: none;
71 }';
72 }
73
74 if ( true === hfe_footer_enabled() ) {
75 $css .= 'footer#colophon {
76 display: none;
77 }';
78 }
79
80 wp_add_inline_style( 'hfe-style', $css );
81 }
82
83 /**
84 * Function overriding the header in the wp_body_open way.
85 *
86 * @since 1.2.0
87 *
88 * // phpcs:ignore
89 * @return void
90 */
91 // phpcs:ignore
92 public function option_override_header(): void {
93 $templates = [];
94 $templates[] = 'header.php';
95 locate_template( $templates, true );
96
97 if ( ! did_action( 'wp_body_open' ) ) {
98 echo '<div class="force-stretched-header">';
99 do_action( 'hfe_fallback_header' );
100 echo '</div>';
101 }
102 }
103 }
104 new Global_Theme_Compatibility();
105