Filtra alguna acción del complemento en wp head / wp_footer

2

Estoy usando un complemento llamado "syntaxhighlighter".

Sé que no debo hacer preguntas específicas sobre el complemento sino cómo filtrar la acción agregada al wp_head / wp_footer de forma condicional ...

Esto es parte de la secuencia de comandos del complemento:

// Outputting SyntaxHighlighter's JS and CSS
add_action( 'wp_head', array( $this, 'output_header_placeholder' ), 15 );
add_action( 'wp_footer', array( $this, 'maybe_output_scripts' ), 15 );

Ahora, me gustaría agregar un filtro que diga:

if(is_home() || is_category()) {
   // REMOVE THOSE SCRIPS
}

.
No quiero cambiar el código del plugin porque tendría
para recordar volver a hacerlo cuando se actualice ...

¿Cómo puedo filtrar esas acciones cuando sea necesario?

    
pregunta Sagive SEO 02.03.2014 - 07:12

1 respuesta

4

Puedes probar esto (sin probar):

add_action( 'wp_head', 
   function(){
       // your conditions:
       if( is_home() || is_category() )
       {
           // access the global SyntaxHighlighter object instantiated at 'init'.
           global $SyntaxHighlighter;

           // remove your action hooks:
           remove_action( 'wp_head',    
                           array( $SyntaxHighlighter, 'output_header_placeholder' ),
                           15 );
           remove_action( 'wp_footer', 
                           array( $SyntaxHighlighter, 'maybe_output_scripts' ),
                           15 );
       }
   }
);

para eliminar estos enlaces de acción condicionalmente con etiquetas de plantilla. Usamos la acción wp_head con la prioridad predeterminada 10 .

Puede usar otros enlaces, pero deben activarse antes que wp_head con prioridad 15 y después de la creación del objeto $SyntaxHighlighter a través del enlace init .

También debe asegurarse de que las etiquetas de su plantilla, que desea usar en sus controles condicionales, estén disponibles en el gancho que elija.

    
respondido por el birgire 02.03.2014 - 10:45

Lea otras preguntas en las etiquetas