Eliminar estilos css de una página específica

2

Necesito eliminar todos los estilos de tema (tanto para niños como para padres) css de una página singular usando functions.php en un tema para niños. Esto es lo que estoy agregando actualmente a las funciones del niño. Php

// import parent and child theme css
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));}

// remove the parent & style css
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' );

Quiero aplicar esta función PREFIX_remove_scripts a una sola página en el sitio. ¿Cómo puedo lograr esto mejor? ¿O hay otra forma adecuada? Muchas gracias de antemano!

    
pregunta Ben Wright 16.02.2016 - 22:07

1 respuesta

4

Puede usar etiquetas condicionales para orientar la página específica en la que necesita eliminar los estilos. Puede usar is_page() para apuntar a una página página (a diferencia de otro tipo de publicación) y pasar una ID de página, una bala, un título o ningún argumento para apuntar a una página cualquiera .

function wpse_217881_remove_scripts() {

    // Check for the page you want to target
    if ( is_page( 'About Me And Joe' ) ) {

        // Remove Styles
        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' );
    }
}

Supongo que ya lo estás, pero para ser explícito, deberías estar llamando a la función que elimina / anula el registro de los estilos de un gancho de acción, en esta instancia wp_enqueue_scripts .

De la wp_enqueue_scripts docs :

  

A pesar del nombre, se usa para poner en cola tanto los scripts como los estilos

add_action( 'wp_enqueue_scripts', 'wpse_217881_remove_scripts' );

// Optionaly add a priority if needed i.e:
// add_action( 'wp_enqueue_scripts', 'wpse_217881_remove_scripts', 20 );
    
respondido por el Cai 17.02.2016 - 00:37

Lea otras preguntas en las etiquetas