Come si fa a mostrare i prezzi dopo aver fatto Login su Woocommerce?

Incollando questo codice sul file functions.php, il vostro tema non mostrerà più i prezzi dei prodotti invitando i visitatori a loggarsi o registrarsi per poterli vedere. Questa soluzione elimina anche il pulsante aggiungi al carrello.

function woocommerce_show_price_logged($price){
    if(is_user_logged_in() ){
        return $price;
    } else {
        add_action( 'woocommerce_single_product_summary', 'woocommerce_login_to_see_price', 31 );
        add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_login_to_see_price', 11 );
        remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
        remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );
        remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
        remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );
    }
}

add_filter('woocommerce_get_price_html', 'woocommerce_show_price_logged');
 
function woocommerce_login_to_see_price() {
        echo 'Registrati per vedere i prezzi';
}

Rimuovere il pulsante acquista dalle liste di prodotti su woocommerce

Condivido una funzione php da usare su wordpress che può essere molto utile per chi vuole rimuovere il pulsante “Acquista” da tutte liste di prodotti di woocommerce. La funzione viene usata in combinazione con la action hook “woocommerce_template_loop_add_to_cart” qui descritta e va incollata nel file functions.php perchè funzioni.


function woocommerce_remove_loop_button() {
    remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);

}
add_action('init', 'woocommerce_remove_loop_button');