/* Show Prices only for Logged in Users WooCommerce Catalogue Mode */
function wpflt_hide_price_not_logged_in() {
if ( ! is_user_logged_in() ) {
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );
remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
}}
add_action( 'init', 'wpflt_hide_price_not_logged_in' );
If you don’t want to show prices for your viewers and want to display only for your Logged In users, add the above code to your functions.php.
Logged-in users will be able to complete purchases on your site.
If you are running Distribution Business/ Agency, where you are the main distributor and want to show prices only for your dealers, hiding prices from viewers/ other people, this is a wonderful option in WooCommerce.