You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
1.8 KiB
PHP
78 lines
1.8 KiB
PHP
<?php
|
|
/**
|
|
* HFE_Astra_Compat setup
|
|
*
|
|
* @package header-footer-elementor
|
|
*/
|
|
|
|
/**
|
|
* Astra theme compatibility.
|
|
*/
|
|
class HFE_Astra_Compat {
|
|
|
|
/**
|
|
* Instance of HFE_Astra_Compat.
|
|
*
|
|
* @var HFE_Astra_Compat
|
|
*/
|
|
private static $instance;
|
|
|
|
/**
|
|
* Initiator
|
|
*/
|
|
public static function instance() {
|
|
if ( ! isset( self::$instance ) ) {
|
|
self::$instance = new HFE_Astra_Compat();
|
|
|
|
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
|
}
|
|
|
|
return self::$instance;
|
|
}
|
|
|
|
/**
|
|
* Run all the Actions / Filters.
|
|
*/
|
|
public function hooks() {
|
|
if ( hfe_header_enabled() ) {
|
|
add_action( 'template_redirect', [ $this, 'astra_setup_header' ], 10 );
|
|
add_action( 'astra_header', 'hfe_render_header' );
|
|
}
|
|
|
|
if ( hfe_footer_enabled() ) {
|
|
add_action( 'template_redirect', [ $this, 'astra_setup_footer' ], 10 );
|
|
add_action( 'astra_footer', 'hfe_render_footer' );
|
|
}
|
|
|
|
if ( hfe_is_before_footer_enabled() ) {
|
|
add_action( 'astra_footer_before', 'hfe_render_before_footer' );
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Disable header from the theme.
|
|
*/
|
|
public function astra_setup_header() {
|
|
remove_action( 'astra_header', 'astra_header_markup' );
|
|
|
|
// Remove the new header builder action.
|
|
if ( class_exists( 'Astra_Builder_Helper' ) && Astra_Builder_Helper::$is_header_footer_builder_active ) {
|
|
remove_action( 'astra_header', [ Astra_Builder_Header::get_instance(), 'prepare_header_builder_markup' ] );
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Disable footer from the theme.
|
|
*/
|
|
public function astra_setup_footer() {
|
|
remove_action( 'astra_footer', 'astra_footer_markup' );
|
|
|
|
// Remove the new footer builder action.
|
|
if ( class_exists( 'Astra_Builder_Helper' ) && Astra_Builder_Helper::$is_header_footer_builder_active ) {
|
|
remove_action( 'astra_footer', [ Astra_Builder_Footer::get_instance(), 'footer_markup' ] );
|
|
}
|
|
}
|
|
}
|
|
|
|
HFE_Astra_Compat::instance();
|