This snippet is used in the following knowledge base article – https://kb.wpbeaverbuilder.com/article/389-add-header-footer-and-parts-support-to-your-theme-themer
<?php // Do not copy this line, start with line 3
add_filter( 'fl_theme_builder_part_hooks', 'my_theme_register_part_hooks' );
function my_theme_register_part_hooks() {
return array(
array(
'label' => 'Header',
'hooks' => array(
'genesis_before_header' => 'Before Header',
'genesis_after_header' => 'After Header',
)
),
array(
'label' => 'Content',
'hooks' => array(
'genesis_before_content' => 'Before Content',
'genesis_after_content' => 'After Content',
)
),
array(
'label' => 'Footer',
'hooks' => array(
'genesis_before_footer' => 'Before Footer',
'genesis_after_footer' => 'After Footer',
)
)
);
}
<?php // Do not copy this line, start with line 3
add_action( 'after_setup_theme', 'my_theme_header_footer_support' );
function my_theme_header_footer_support() {
add_theme_support( 'fl-theme-builder-headers' );
add_theme_support( 'fl-theme-builder-footers' );
add_theme_support( 'fl-theme-builder-parts' );
}
<?php // Do not copy this line, start with line 3
add_action( 'wp', 'my_theme_header_footer_render' );
function my_theme_header_footer_render() {
// Get the header ID.
$header_ids = FLThemeBuilderLayoutData::get_current_page_header_ids();
// If we have a header, remove the theme header and hook in Theme Builder's.
if ( ! empty( $header_ids ) ) {
remove_action( 'genesis_header', 'genesis_do_header' );
add_action( 'genesis_header', 'FLThemeBuilderLayoutRenderer::render_header' );
}
// Get the footer ID.
$footer_ids = FLThemeBuilderLayoutData::get_current_page_footer_ids();
// If we have a footer, remove the theme footer and hook in Theme Builder's.
if ( ! empty( $footer_ids ) ) {
remove_action( 'genesis_footer', 'genesis_do_footer' );
add_action( 'genesis_footer', 'FLThemeBuilderLayoutRenderer::render_footer' );
}
}
<?php // Do not copy this line, start with line 3
add_action( 'after_setup_theme', 'my_theme_header_footer_support' );
function my_theme_header_footer_support() {
add_theme_support( 'fl-theme-builder-headers' );
add_theme_support( 'fl-theme-builder-footers' );
}
<?php // Do not copy this line, start with line 3
remove_action( 'genesis_header', 'genesis_do_header' );