ruạṛ
<?php /** * HFE_Blocksy_Compat setup * * @package header-footer-elementor */ /** * Blocksy theme compatibility. * * @since 2.4.9 */ class HFE_Blocksy_Compat { /** * Instance of HFE_Blocksy_Compat. * * @var HFE_Blocksy_Compat */ private static $instance; /** * Initiator * * @return HFE_Blocksy_Compat */ public static function instance() { if ( ! isset( self::$instance ) ) { self::$instance = new HFE_Blocksy_Compat(); add_action( 'wp', [ self::$instance, 'hooks' ] ); } return self::$instance; } /** * Run all the Actions / Filters. * * @return void */ public function hooks() { if ( hfe_header_enabled() ) { add_action( 'template_redirect', [ $this, 'blocksy_setup_header' ], 10 ); add_filter( 'blocksy:builder:header:enabled', '__return_false' ); } if ( hfe_footer_enabled() ) { add_action( 'template_redirect', [ $this, 'blocksy_setup_footer' ], 10 ); add_filter( 'blocksy:builder:footer:enabled', '__return_false' ); } if ( hfe_is_before_footer_enabled() ) { add_action( 'blocksy:footer:before', 'hfe_render_before_footer', 1 ); } } /** * Disable header from the theme. * * @return void */ public function blocksy_setup_header() { // Use Blocksy's filter to disable theme header. add_filter( 'blocksy:builder:header:enabled', '__return_false' ); // Add HFE header to blocksy_output_header function. add_action( 'blocksy:header:before', 'hfe_render_header', 5 ); } /** * Disable footer from the theme. * * @return void */ public function blocksy_setup_footer() { // Use Blocksy's filter to disable theme footer. add_filter( 'blocksy:builder:footer:enabled', '__return_false' ); // Add HFE footer - use a different hook that's not inside blocksy_output_footer. add_action( 'blocksy:footer:before', [ $this, 'render_custom_footer' ], 5 ); } /** * Render custom footer with proper HTML structure * * @return void */ public function render_custom_footer() { echo '<footer id="footer">'; hfe_render_footer(); echo '</footer>'; } } HFE_Blocksy_Compat::instance();
cải xoăn