Removing The Cart Icon from Astra Header for Guest Users

I am using the free Astra theme and default Astra header layout. Also I am using the WooCommerce plugin for shop. I select the “WooCommerce” under Customizer->Layout->Header->Last Item in Menu drop down list. It is showing the bag icon at right side of my header menu.

Now I am wanting to hide this icon for my Guest users. This means that logout users will not see this icon at header. So I used this following PHP snippet and added into my functions.php of Astra child theme.

/** 
 * Removing the cart from astra header
 * Only logged in user can see this
 */
add_action( 'after_setup_theme', 'astra_remove_header_cart_icon');
function astra_remove_header_cart_icon() {
	
	if( is_user_logged_in() )
		return;
	
	remove_filter( 'astra_get_dynamic_header_content', array( Astra_Woocommerce::get_instance(), 'astra_header_cart' ), 10, 3 );
}

is_user_logged_in() function is checking that a user is logged in to site or not. If user is not logged in, it will remove the filter astra_get_dynamic_header_content and the complete HTML markup of cart icon from header.

This site uses cookies to offer you a better browsing experience. By browsing this website, you agree to our use of cookies.