Rimuovere gli stili CSS da una pagina specifica
Ho bisogno di rimuovere tutti gli stili del tema (sia del tema genitore che figlio) da una singola pagina utilizzando functions.php in un child theme. Ecco cosa sto attualmente aggiungendo al functions.php del child theme:
// importa gli stili CSS del tema genitore e figlio
function theme_enqueue_styles() {
wp_enqueue_style('parent-style', get_template_directory_uri() . '/style.css');
wp_enqueue_style('child-style', get_stylesheet_directory_uri() . '/style.css', array($parent_style));}
// rimuove gli stili CSS del genitore e figlio
function PREFIX_remove_scripts() {
wp_dequeue_style( 'parent-style' );
wp_dequeue_style( 'child-style' );
wp_dequeue_style( 'parent-style-css' );
wp_deregister_style( 'parent-style' );
wp_deregister_style( 'child-style' );
wp_deregister_style( 'parent-style-css' );
Vorrei applicare questa funzione PREFIX_remove_scripts solo a una pagina specifica del sito. Qual è il modo migliore per farlo? O esiste un altro metodo adatto? Grazie mille in anticipo!

Puoi utilizzare i tag condizionali per indirizzare la pagina specifica su cui desideri rimuovere gli stili. Puoi usare is_page()
per indirizzare una pagina di tipo page (in contrasto con altri tipi di post) e passare un ID di pagina, slug, titolo o nessun argomento per indirizzare qualsiasi pagina.
function wpse_217881_remove_scripts() {
// Controlla la pagina che vuoi indirizzare
if ( is_page( 'About Me And Joe' ) ) {
// Rimuovi gli stili
wp_dequeue_style( 'parent-style' );
wp_dequeue_style( 'child-style' );
wp_dequeue_style( 'parent-style-css' );
wp_deregister_style( 'parent-style' );
wp_deregister_style( 'child-style' );
wp_deregister_style( 'parent-style-css' );
}
}
Presumo che tu lo stia già facendo, ma per essere esplicito, dovresti chiamare la funzione che rimuove/deregistra gli stili da un action hook - in questo caso wp_enqueue_scripts
.
Dalla documentazione di wp_enqueue_scripts
:
Nonostante il nome, viene utilizzato per accodare sia script che stili
add_action( 'wp_enqueue_scripts', 'wpse_217881_remove_scripts' );
// Opzionalmente aggiungi una priorità se necessario, ad esempio:
// add_action( 'wp_enqueue_scripts', 'wpse_217881_remove_scripts', 20 );

La soluzione migliore per me è stata creare un template con intestazione diversa o senza intestazione.

La tua risposta potrebbe essere migliorata con ulteriori informazioni di supporto. Per favore [modifica] per aggiungere maggiori dettagli, come citazioni o documentazione, in modo che altri possano confermare che la tua risposta è corretta. Puoi trovare maggiori informazioni su come scrivere buone risposte nel centro assistenza.
