I am trying to hide the Storefront page title on my homepage. This code hides it from all the side:
function sf_change_homepage_title( $args ) {
remove_action( 'storefront_page', 'storefront_page_header', 10 );
}
add_action( 'init', 'sf_change_homepage_title' );
But I can't use is_front_page() because WordPress loads functions.php before the $wp_query object has been set up with the current page, as explained here.
I would prefer not using the plugin "Title Toggle for Storefront Theme".
Thank you.
You didn't understand right the answer you linked to. You can't use is_front_page()
right inside functions.php, but you can totally use it in a callback function.
The is_front_page()
conditional is only available after the query is setup, which happens at init.
So this:
function sf_change_homepage_title( $args ) {
if(is_front_page()) {
remove_action( 'storefront_page', 'storefront_page_header', 10 );
}
}
add_action( 'init', 'sf_change_homepage_title' );
Will work.
The solution is to replace "init" with "wp":
add_action( 'wp', 'sf_change_homepage_title' );
Thanks.