
Nascondere i prezzi dei prodotti in WooCommerce, anche se sappiamo che rappresentano una sezione chiave della maggior parte dei negozi online, in alcuni casi potrebbe risultare necessario e persino utile.
Se questa è l’attuale esigenza per il tuo negozio eCommerce, sei nel posto giusto. Qui puoi trovare alcune soluzioni per nascondere i prezzi senza l’utilizzo di plugin aggiuntivi ma semplicemente inserendo snippet di codice nel file functions.php ma, prima di proseguire, esaminiamo un paio di situazioni in cui potrebbe aver senso questa scelta.
Perché nascondere i prezzi dei prodotti in WooCommerce?
Se gestisci un eCommerce di prodotti all’ingrosso e desideri mostrare i prezzi solo ai clienti business verificati e nasconderli ad altri utenti, allora potrebbe essere una scelta corretta quella di oscurare i prezzi.
Un altro scenario è che potresti voler utilizzare il tuo sito web per aumentare la visibilità online della tua attività fisica, visualizzando un elenco di prodotti che non possono essere acquistati online ma solo presso il tuo negozio fisico.
Oppure potresti decidere di rendere disponibili le informazioni dei tuoi prodotti solo ai clienti registrati.
Questi sono solo alcuni dei casi in cui potresti prendere in considerazione l’idea di nascondere i prezzi sul tuo negozio, però WooCommerce per WordPress, non ha un’opzione integrata per farlo ed i prezzi vengono visualizzati per impostazione predefinita.
Come nascondere i prezzi dei prodotti in WooCommerce?
Fortunatamente ci sono diverse soluzioni piuttosto semplici per raggiungere lo scopo e possono essere applicate alle singole pagine dei prodotti, alla pagina del negozio e persino solo a categorie specifiche. Questo può essere effettuato inserendo snippet di codice al file functions.php o utilizzando plugin specifici ma, quando possibile, evitiamo di installarne di nuovi (leggi perché).
Senza ulteriori indugi, passiamo all’applicazione delle diverse soluzioni per nascondere i prezzi dei prodotti del tuo sito basato su WooCommerce.
Tempo richiesto: 10 minuti
Per nascondere i prezzi dei prodotti, non è richiesta una elevata familiarità con la programmazione. Questa attività è accessibile a tutti ma consigliamo, prima di procedere, di effettuare un backup di tutto il sito e database e, se non precedentemente fatto, creare un tema child, al fine di mantenere le modifiche anche dopo un eventuale aggiornamento del tema.
Come dicevamo possiamo applicare le modifiche descritte di seguito, intervenendo sul file functions.php, quindi effettuiamo il login come amministratore del sito e, nella sezione Aspetto > Editor dei temi, aggiungere il codice riportato di seguito nel file functions.php.
- Per nascondere i prezzi su tutti i prodotti, aggiungi semplicemente questo codice nel file function.php del tuo tema:
add_filter( 'woocommerce_get_price_html', 'remove_price');
function remove_price($price){
return;
} - Nel caso in cui desideri nascondere i prezzi a tutti tranne a quelli registrati che hanno effettuato il login, inserisci il seguente codice:
function ace_hide_prices_guests( $price ) {
if ( ! is_user_logged_in() ) {
return ''; // mostra uno spazio vuoto al posto del prezzo.
}
return $price;
}
add_filter( 'woocommerce_get_price_html', 'ace_hide_prices_guests' ); - Se desideri nascondere i prezzi solo nella pagina dei prodotti, inserisci il seguente snippet di codice:
add_filter( 'woocommerce_after_shop_loop_item_title', 'remove_woocommerce_loop_price', 2 );
function remove_woocommerce_loop_price() {
if( ! is_shop() ) return; // rimuove i prezzi nella pagina shop
remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );
} - Per nascondere i prezzi di prodotti specifici, puoi farlo facilmente utilizzando il seguente codice:
add_filter( 'woocommerce_get_price_html', 'hide_price_product_ids', 10, 2 );
function hide_price_product_ids( $price, $product ) {
$hide_for_products = array( 2490 ); // sostituire l'id 2490 con l'id del tuo prodotto
if ( in_array( $product->get_id(), $hide_for_products ) ) {
return;
}
else{
return $price;
}
} - Se invece vuoi nascondere i prezzi dei prodotti che appartengono a una categoria specifica, questo è il codice da utilizzare:
add_filter( 'woocommerce_get_price_html','hide_price_on_taxonomy');
function hide_price_on_taxonomy( $price) {
global $product;
$hide_for_categories = array( 'shirts' ); // nasconde i prezzi della categoria in base agli slugs o IDs
if ( has_term( $hide_for_categories, 'product_cat', $product->get_id() ) ) { // Don't show price when it's in one of the categories
$price= '';
}
return $price;
}
In conclusione
Quindi che tu gestisca un eCommerce B2B o destinato solo ad utenti registrati, ora puoi personalizzare il sito a tuo piacimento.
Se desideri affidare alla nostra agenzia la gestione del tuo sito eCommerce, personalizzarlo o hai semplicemente bisogno di un consiglio, contattaci senza impegno.
Saremo felici di aiutarti.