A member of the StudioPress forum has asked to display Sub-Footer Left and Sub-Footer right on the Home page only. To do this, follow the instructions below.
If you are unfamiliar with working with your theme files, stop and ask for help. If you are familiar with modifying your theme files – you should back them up before proceeding.
Open up the functions.php file located in your child theme folder. Look for the following code starting around Line 85.
//* Add the sub footer section | |
add_action( 'genesis_before_footer', 'outreach_sub_footer', 5 ); | |
function outreach_sub_footer() { | |
if ( is_active_sidebar( 'sub-footer-left' ) || is_active_sidebar( 'sub-footer-right' ) ) { | |
echo '<div class="sub-footer"><div class="wrap">'; | |
genesis_widget_area( 'sub-footer-left', array( | |
'before' => '<div class="sub-footer-left">', | |
'after' => '</div>', | |
) ); | |
genesis_widget_area( 'sub-footer-right', array( | |
'before' => '<div class="sub-footer-right">', | |
'after' => '</div>', | |
) ); | |
echo '</div><!-- end .wrap --></div><!-- end .sub-footer -->'; | |
} | |
} |
Replace that code with this:
//* Add the sub footer section | |
add_action( 'genesis_before_footer', 'outreach_sub_footer', 5 ); | |
function outreach_sub_footer() { | |
if ( ! is_home() ) { | |
return; | |
} | |
if ( is_active_sidebar( 'sub-footer-left' ) || is_active_sidebar( 'sub-footer-right' ) ) { | |
echo '<div class="sub-footer"><div class="wrap">'; | |
genesis_widget_area( 'sub-footer-left', array( | |
'before' => '<div class="sub-footer-left">', | |
'after' => '</div>', | |
) ); | |
genesis_widget_area( 'sub-footer-right', array( | |
'before' => '<div class="sub-footer-right">', | |
'after' => '</div>', | |
) ); | |
echo '</div><!-- end .wrap --></div><!-- end .sub-footer -->'; | |
} | |
} |
Save the file. Clear your cache if that has been enabled on your website.
Lines 4 thru 6 tells your theme to display only on the home page.
That’s it!
I always avoid editing the (child) theme files so here’s another approach which leaves functions.php untouched:
add_action( 'genesis_after_content_sidebar_wrap', 'subfooter_only_on_home_page' );
function subfooter_only_on_home_page() {
if ( ! is_home() ) {
remove_action( 'genesis_before_footer', 'outreach_sub_footer', 5 );
}
}
This could be put in its own plugin file.
Hi Damien, thank you for taking the time to post that additional solution.