Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

Desactivar Hooks de plugins en sólo un template

Estas en el tema de Desactivar Hooks de plugins en sólo un template en el foro de WordPress en Foros del Web. Hola!! hace varios días estoy tratando de encontrar la solución para mi problema... he probado 3483740 cosas! y no funciona... Debo desarrollar una página con ...
  #1 (permalink)  
Antiguo 19/07/2010, 11:48
 
Fecha de Ingreso: julio-2010
Mensajes: 1
Antigüedad: 13 años, 9 meses
Puntos: 0
Exclamación Desactivar Hooks de plugins en sólo un template

Hola!! hace varios días estoy tratando de encontrar la solución para mi problema... he probado 3483740 cosas! y no funciona...

Debo desarrollar una página con la construcción de un mailing (con tablas y todo lo que un mailing conlleva), de algunas categorías... todo eso está ok, pero el problema está cuando se despliegan los plugins Sociable y Thumbs Excerpts ... Necesito que NO se desplieguen! =(

Mi gran problema es que NO puedo ponerles display:none con css, puesto que la finalidad es la construcción de un mailing, que no puede llevar triquiñuelas de esa especie... además el despliegue de los plugins se hace dinámicamente.

He probado:

En la misma plantilla del mailing.php
Código PHP:
remove_filter('init''sociable_init_locale');
register_deactivation_hook(__FILE__'sociable_activation_hook');
remove_filter('the_content''sociable_display_hook');
remove_filter('the_excerpt''sociable_display_hook');
remove_action('wp_insert_post''sociable_insert_post');
    
list_hooked_functions('wp_head');
list_hooked_functions('wp_footer');
list_hooked_functions();

remove_all_actions('sociable_activation_hook');
remove_all_filters('sociable_activation_hook'); 
La función list_hooked_functions(); la agregué en Functions.php
Código PHP:
function list_hooked_functions($tag=false){
 global 
$wp_filter;
 if (
$tag) {
  
$hook[$tag]=$wp_filter[$tag];
  if (!
is_array($hook[$tag])) {
  
trigger_error("Nothing found for '$tag' hook"E_USER_WARNING);
  return;
  }
 }
 else {
  
$hook=$wp_filter;
  
ksort($hook);
 }
 echo 
'<pre>';
 foreach(
$hook as $tag => $priority){
  echo 
"<br />&gt;&gt;&gt;&gt;&gt;\t<strong>$tag</strong><br />";
  
ksort($priority);
  foreach(
$priority as $priority => $function){
  echo 
$priority;
  foreach(
$function as $name => $properties) echo "\t$name<br />";
  }
 }
 echo 
'</pre>';
 return;

También probé en Functions.php con:
Código PHP:
function quita_hooks_indeseados(){
if((
is_page('3624')) || (is_page('3621'))){
    echo 
"La función está mostrándose en la plantilla";
        
    
remove_filter('init''sociable_init_locale');
    
register_deactivation_hook(__FILE__'sociable_activation_hook');
    
remove_filter('the_content''sociable_display_hook');
    
remove_filter('the_excerpt''sociable_display_hook');
    
remove_action('wp_insert_post''sociable_insert_post');
    
//list_hooked_functions('wp_head');
//list_hooked_functions('wp_footer');
list_hooked_functions();

remove_all_actions('sociable_activation_hook');
remove_all_filters('sociable_activation_hook');


y el uso en el template es:
Código PHP:
quita_hooks_indeseados(); 

Muchas gracias por su ayuda! en serio que busqué muchísimo antes de abrir este tema.


Gracias!!!,
Shimapi

Etiquetas: hooks, plugin, remove, acciones, filtros
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:56.