Tutti i modi per rimuovere la barra laterale Divi da tutte le pagine dei prodotti WooCommerce

Introduzione
Quando utilizziamo il tema Divi con WooCommerce, è facile rendere le pagine di base come Negozio, Carrello, Checkout e Account a larghezza intera (full width): è solo una semplice configurazione del Generatore di Temi. Oppure basta modificare ogni singola pagina e sul lato destro in Impostazioni pagina Divi, seleziona Larghezza intera per l’impostazione Layout di pagina (poi ricordati di salvare i cambiamenti e aggiornare la pagina). Se stai cercando invece di rendere le pagine dei prodotti (per i singoli prodotti) a tutta larghezza o rimuovere la barra laterale dalle pagine dei singoli prodotti, ci sono almeno 2 modi per farlo: usare il codice CSS o modificare il file functions del tuo tema.

Rimuovi la barra laterale usando il codice CSS
Cambiare l’icona dell’hamburger del modulo menu Divi in una X è un processo semplice. Siamo fortunati che l’icona fa già parte di un pacchetto di font incorporato con Divi e chiamato ETmodules. Il codice dell’icona predefinito per il menu dell’hamburger è 61, e lo cambieremo con la X quando il menu viene aperto, che ha un codice icona di 4d. Quindi, una volta che si preme l’icona del menu dell’hamburger per aprire il menu, l’icona viene sostituita con una X e fornisce una migliore esperienza utente.
Copia e incolla il seguente frammento di codice CSS nella casella Divi> Opzioni tema> CSS personalizzato.
/*** Rimuovi la linea tra il contenuto e la barra laterale for Single WooCommerce Product Pages ***/ .single-product #main-content .container:before {background: none;} /*** Nascondi Sidebar for Single WooCommerce Product Pages ***/ .single-product #sidebar, .single-product #sidebar-secondary {display:none;} /*** Espandi l’area Single WooCommerce Product Pages ***/ @media (min-width: 981px){ .single-product #left-area, .single-product #primary { width: 100%; padding: 23px 0px 0px !important; float: none !important; } }
Ecco, dopo aver incollato il codice e salvato i cambiamenti vedrai che la barra laterale scompare e la pagina si trova a larghezza intera!
Post correlato: come aggiungere codice CSS al tema Divi
Rimuovere la barra laterale modificando il file functions.php
Tuttavia, penso che esista un modo migliore ed evitare completamente la generazione del contenuto della barra laterale. Perché? Perché il CSS “display: none;” proprietà nasconde solo visivamente il contenuto. Il contenuto è ancora generato da WordPress e viene ancora caricato nella pagina del visitatore. Quindi, anche se i tuoi utenti non possono vederlo, può comunque essere letto dai motori di ricerca e da alcuni screen reader. Perché utilizziamo le risorse del nostro server per generare la barra laterale se la nostra unica intenzione è soltanto nasconderla con il CSS?
Aggiungi il codice al file functions.php
Di seguito è riportato uno snippit di codice con un paio di funzioni che puoi utilizzare per rimuovere completamente la barra laterale da tutte le pagine dei prodotti WooCommerce (così come le pagine del negozio e delle categorie). Dovresti inserirlo nel file functions.php del tuo tema child Divi. Copia e incolla il seguente codice all’interno del file functions.php:
<?php /** * Remove Divi sidebar from all WooCommerce Product pages (as well as Shop and Category pages) */ function mytheme_divi_output_content_wrapper_end() { echo ‘ </div> <!– #left-area –> </div> <!– #content-area –> </div> <!– .container –> </div> <!– #main-content –>’; } function mytheme_remove_divi_sidebar() { remove_action( ‘woocommerce_after_main_content’, ‘et_divi_output_content_wrapper_end’, 10 ); add_action( ‘woocommerce_after_main_content’, ‘mytheme_divi_output_content_wrapper_end’, 10 ); } add_action( ‘init’, ‘mytheme_remove_divi_sidebar’, 10 ); /** * Adjust the WooCommerce body classes for all WooCommerce Product pages (as well as Shop and Category pages) */ function mytheme_body_classes( $classes ) { if ( function_exists( ‘is_woocommerce’ ) && is_woocommerce() ) { $remove_classes = array(‘et_right_sidebar’, ‘et_left_sidebar’, ‘et_includes_sidebar’); foreach( $classes as $key => $value ) { if ( in_array( $value, $remove_classes ) ) unset( $classes[$key] ); } $classes[] = ‘et_full_width_page’; } return $classes; } add_filter(‘body_class’, ‘mytheme_body_classes’, 20);
Considerazioni finali
Questo codice nasconde solo la barra laterale sulle pagine generate da WooCommerce, come la pagina del negozio, le pagine delle categorie e le pagine dei prodotti. Per nascondere la barra laterale sulle pagine con codici brevi di WooCommerce, come “Il mio account”, “Carrello” e “Checkout”, dovrai nasconderla manualmente utilizzando la casella “Impostazioni pagina Divi” di quella pagina o generare un nuovo layout per quella pagina. Il “