Astra_Builder_Loader::load_markup()
Advanced Hooks markup loader
Description
Loads appropriate template file based on the style option selected in options panel.
Source
File: inc/builder/class-astra-builder-loader.php
public function load_markup() {
if ( ! defined( 'ASTRA_ADVANCED_HOOKS_POST_TYPE' ) || false === Astra_Builder_Helper::$is_header_footer_builder_active ) {
return;
}
$option = array(
'location' => 'ast-advanced-hook-location',
'exclusion' => 'ast-advanced-hook-exclusion',
'users' => 'ast-advanced-hook-users',
);
$result = Astra_Target_Rules_Fields::get_instance()->get_posts_by_conditions( ASTRA_ADVANCED_HOOKS_POST_TYPE, $option );
$header_counter = 0;
$footer_counter = 0;
$layout_404_counter = 0;
foreach ( $result as $post_id => $post_data ) {
$post_type = get_post_type();
if ( ASTRA_ADVANCED_HOOKS_POST_TYPE !== $post_type ) {
$layout = get_post_meta( $post_id, 'ast-advanced-hook-layout', false );
if ( isset( $layout[0] ) && '404-page' == $layout[0] && 0 == $layout_404_counter ) {
$layout_404_settings = get_post_meta( $post_id, 'ast-404-page', true );
if ( isset( $layout_404_settings['disable_header'] ) && 'enabled' == $layout_404_settings['disable_header'] ) {
remove_action( 'astra_header', array( Astra_Builder_Header::get_instance(), 'header_builder_markup' ) );
}
if ( isset( $layout_404_settings['disable_footer'] ) && 'enabled' == $layout_404_settings['disable_footer'] ) {
remove_action( 'astra_footer', array( Astra_Builder_Footer::get_instance(), 'footer_markup' ) );
}
$layout_404_counter ++;
} elseif ( isset( $layout[0] ) && 'header' == $layout[0] && 0 == $header_counter ) {
// Remove default site's header.
remove_action( 'astra_header', array( Astra_Builder_Header::get_instance(), 'header_builder_markup' ) );
$header_counter++;
} elseif ( isset( $layout[0] ) && 'footer' == $layout[0] && 0 == $footer_counter ) {
// Remove default site's footer.
remove_action( 'astra_footer', array( Astra_Builder_Footer::get_instance(), 'footer_markup' ) );
$footer_counter++;
}
}
}
}
Expand full source code Collapse full source code View on Trac
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Introduced. |