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

Como hacer que un widget no salga en algunas paginas

Estas en el tema de Como hacer que un widget no salga en algunas paginas en el foro de WordPress en Foros del Web. Estoy usando el tema iFeature, junto con la tienda WooCommerce, pero tengo un problema. Uno de los widgets que se muestran en el lado izquierdo, ...
  #1 (permalink)  
Antiguo 07/07/2012, 12:38
 
Fecha de Ingreso: noviembre-2011
Mensajes: 102
Antigüedad: 13 años
Puntos: 0
Como hacer que un widget no salga en algunas paginas

Estoy usando el tema iFeature, junto con la tienda WooCommerce, pero tengo un problema.
Uno de los widgets que se muestran en el lado izquierdo, NO quiero que se muestre cuando estoy en la pagina de la tienda, eso como se puede hacer?

http://imagebin.org/index.php?mode=image&id=219871 << ahi se ve lo que quiero decir, ahi se ve bien, pero cuando me meto en la seccion de tienda, se queda todo movido y no queda bien
  #2 (permalink)  
Antiguo 09/07/2012, 03:10
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 11 meses
Puntos: 28
Respuesta: Como hacer que un widget no salga en algunas paginas

yo hice eso mismo tocando código fuente, que estoy seguro de que no es el mejor sistema ni el único, pero me funciona...

si no quieres que se muestre cuando estás en la tienda, lo que puedes hacer es recuperar el enlace con un $link = get_permalink(); y detectar si dentro de esa cadena está la palabra 'tienda', de tal manera que si está no muestras los widgets

es decir, si la url de tu tienda es www.midominio.es/tienda sería tan fácil como te explicaba antes
  #3 (permalink)  
Antiguo 09/07/2012, 07:40
 
Fecha de Ingreso: noviembre-2011
Mensajes: 102
Antigüedad: 13 años
Puntos: 0
Respuesta: Como hacer que un widget no salga en algunas paginas

oks, eso lo tendria que hacer con PHP, pero, lo que no se es en que parte del codigo tengo que hacerlo
  #4 (permalink)  
Antiguo 09/07/2012, 08:19
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 11 meses
Puntos: 28
Respuesta: Como hacer que un widget no salga en algunas paginas

bueno, eso no sé ya si depende de la plantilla... yo por ejemplo lo tuve que hacer en el footer.php porque es el que llama al get_sidebar_right(); pero ese es mi caso, pues yo quería que dejara de pintar la columna de la derecha y sus widgets al estar en determinadas páginas
  #5 (permalink)  
Antiguo 09/07/2012, 09:19
 
Fecha de Ingreso: noviembre-2011
Mensajes: 102
Antigüedad: 13 años
Puntos: 0
Respuesta: Como hacer que un widget no salga en algunas paginas

Ahora mismo lo tengo de la siguiente manera:



Usando el Firebug, quitando los trozos.

Código:
<div id="text-2" class="widget-container">
<h2 class="widget-title">Contacto</h2>
<div class="textwidget">Contacto</div>
</div>
y

Código:
<div id="skype-status-3" class="widget-container">
<h2 class="widget-title">Contactar por Skype</h2>
<div class="skype-status-button">
</div>
Si quito esos 2 trozos, todo funciona bien, no sale los widgets y se ve bien, pero claro, eso no se como hacerlo en los archivos .php que lleva incluidos wordpress :S
  #6 (permalink)  
Antiguo 09/07/2012, 09:31
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 11 meses
Puntos: 28
Respuesta: Como hacer que un widget no salga en algunas paginas

yo creo que podrías hacerlo así

Código PHP:
<?php 
    
//obtengo el link en el que estoy
    
$link get_permalink();
    
//separo el string según las barras
    
$datos explode('/',$link);
    
//veo si hay una cadena TIENDA en la url
    
$n_tienda substr_count($link'tienda');
    if(
is_page() && $n_tienda == '1') {
                
//no pinto nada, o pinto cualquier otra cosa
        
} else {
        
?>
        <div id="text-2" class="widget-container">
        <h2 class="widget-title">Contacto</h2>
        <div class="textwidget">Contacto</div>
        </div>
        <div id="skype-status-3" class="widget-container">
        <h2 class="widget-title">Contactar por Skype</h2>
        <div class="skype-status-button">
        </div>
        <?php 
    
?>
  #7 (permalink)  
Antiguo 09/07/2012, 09:37
 
Fecha de Ingreso: noviembre-2011
Mensajes: 102
Antigüedad: 13 años
Puntos: 0
Respuesta: Como hacer que un widget no salga en algunas paginas

con este plugin se puede hacer de una manera mucho mas sencilla
https://wordpress.org/extend/plugins/widget-logic/

he hecho lo que queria, que los widgets solo se mostraran en X paginas, pero ahora, cuando en la tienda no se muestra ningun widget, wordpress añade lo que habia al principio



PD: gracias por el codigo, lo que pasa, es que continuo con el mismo problema, no se donde incrustarlo
  #8 (permalink)  
Antiguo 10/07/2012, 03:42
 
Fecha de Ingreso: noviembre-2011
Mensajes: 102
Antigüedad: 13 años
Puntos: 0
Respuesta: Como hacer que un widget no salga en algunas paginas

Actualizo el problema.

Me he metido en la carpeta del tema que estoy usando en wordpress, y el sidebar.php lo he cambiado de nombre, y ya no tengo el problema que menciono ahora.
El sidebar.php era por si no habia ningun widget, que se mostrara eso por defecto. Pero ahora, se me muestra el siguiente texto:



y eso no se como podria quitarlo, he estado mirando por los .php del tema y no encuentro nada

Etiquetas: php, tema, widgets
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 00:12.