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

Problema terrible en wordpress...

Estas en el tema de Problema terrible en wordpress... en el foro de WordPress en Foros del Web. Estoy desesperado¡¡¡¡, estoy "programando" un menú dinámico para que me enliste en una <ul></ul> todos los post que pertenezcan a la categoría que se está ...
  #1 (permalink)  
Antiguo 19/05/2010, 17:56
Avatar de letsalcido  
Fecha de Ingreso: abril-2009
Ubicación: Monterrey, N.L, México
Mensajes: 185
Antigüedad: 15 años
Puntos: 13
Exclamación Problema terrible en wordpress...

Estoy desesperado¡¡¡¡, estoy "programando" un menú dinámico para que me enliste en una <ul></ul> todos los post que pertenezcan a la categoría que se está viendo, por ejemplo: categoría dulce --> paletas , golosinas, caramelos, otra cosa :::: categoría salado --> papas, fritangas, sal... , lo que me hace que al ver la categoría dulce me aparesca un menú de los posts y al lado los posts.

Todo perfecto al momento de ver la página de categoría, pero no sucede así cuando ya estoy en el "single". Para empezar, si le doy click a "X" post, me muestra siempre el mismo, el más nuevo, aunque en la URL me aparece otro. Además que al estar en el single me muestra la lista pero de todos los post y no sólo de la categoría hermana del post que se ve en el momento¡¡¡

Les muestro el código:
SIDEBAR o menú
Código PHP:
<div class="lateral left">
            <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/toplat.jpg" alt="enfermedades" /><br />
            <ul>
             <?php 
            $cat
single_cat_title("",FALSE);
            
$posts=query_posts('category_name='.$cat);
            if(
have_posts()): while(have_posts()): the_post();
            
?>
            <li><a href="<?php the_permalink();?>"><?php the_title(); ?></a></li>
            <?php
            
endwhile; else:
            
?>
            <li>No hay documentos relacionados</li>
            <?php endif; wp_reset_query(); ?>
            </ul>
            <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottomlat.jpg" alt="bottom" />
</div>


SINGLE (el que no me funciona)

Código PHP:
<?php get_header(); ?>
<?php get_sidebar
(); ?>
<?php 
if(have_posts()): ?>
<?php 
while(have_posts()) : the_post(); ?>

       <div class="enfermedades right">
           <div class="enf_encabezado"><h1><?php the_title(); ?></h1></div>
        <div class="enf_cont">
        <?php the_content();?>
        </div>
        <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottom.jpg" alt="bottom" class="im" />
       </div>
       <div class="clear space"></div>

    <?php endwhile; ?>
    <?php else : ?>  
       <div class="enfermedades right">
           <div class="enf_encabezado"><h1>Error</h1></div>
        <div class="enf_cont">
        Lo sentimos pero la p&aacute;gina que busca no existe.
        </div>
        <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottom.jpg" alt="bottom" class="im" />
       </div>
       <div class="clear space"></div>
        <? endif; ?>
<?php get_footer
(); ?>

ARCHIVE (donde todo está bien y de hecho es igual al SINGLE)

Código PHP:
<?php get_header(); ?>
<?php get_sidebar
(); ?>
<?php 
if(have_posts()): ?>
<?php 
while(have_posts()) : the_post(); ?>

       <div class="enfermedades right" id="<?php the_ID(); ?>">
           <div class="enf_encabezado"><a href="<?php the_permalink(); ?>"><h1><?php the_title(); ?></h1></a></div>
        <div class="enf_cont">
        <?php the_content(); ?>
        </div>
        <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottom.jpg" alt="bottom" class="im" />
       </div>
       <div class="clear space"></div>

    <?php endwhile; ?>
    <?php else : ?>  
       <div class="enfermedades right">
           <div class="enf_encabezado"><h1>Error</h1></div>
        <div class="enf_cont">
        Lo sentimos pero la p&aacute;gina que busca no existe.
        </div>
        <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottom.jpg" alt="bottom" class="im" />
       </div>
       <div class="clear space"></div>
<? endif; ?>
<?php get_footer
(); ?>
Para mayor entendimiento ---> http://gastroenterologosenmonterrey.com --> en el menú enfermedades y procedimientos

En verdad agradecería su apoyo, no se que hacer, ya estuve casi todo el día buscando por todos lados¡¡¡
__________________
Estudio de diseño web
Huasteca Publicidad
  #2 (permalink)  
Antiguo 20/05/2010, 10:59
Avatar de letsalcido  
Fecha de Ingreso: abril-2009
Ubicación: Monterrey, N.L, México
Mensajes: 185
Antigüedad: 15 años
Puntos: 13
Respuesta: Problema terrible en wordpress...

Hay alguien por ahí??, en verdad necesito su ayuda, es mi primera vez en éstos lados.

Se los agradecería demasiado...


Edito: logré arreglar el problema de que no se mostraba el post pertinente , agregué un wp_reset_query() antes del if(have_posts()) y puse otro query_post() con el parámetro 'p' para que sólo muestre el post que se está viendo. Ahora lo que sucede es que en el menú del single, como me dí cuenta que el get_the_category() sólo funciona en una página archive, sigue poniéndome todos los links de todos los post de mis dos categorías, cuando debería darme sólo los links de posts hermanos al del momento. Lo que necesito es saber cómo sacar la categoría de un post simple.


les dejo el código que arreglé

Código PHP:
<?php get_header(); ?>
<?php get_sidebar
(); ?>
<?php wp_reset_query
();
query_posts('p='.$_GET['p']); ?>
<?php 
if(have_posts()): ?>
<?php 
while(have_posts()) : the_post(); ?>

       <div class="enfermedades right">
           <div class="enf_encabezado"><h1><?php the_title(); ?></h1></div>
        <div class="enf_cont">
        <?php the_content();?>
        </div>
        <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottom.jpg" alt="bottom" class="im" />
       </div>
       <div class="clear space"></div>

    <?php endwhile; ?>
    <?php else : ?>  
       <div class="enfermedades right">
           <div class="enf_encabezado"><h1>Error</h1></div>
        <div class="enf_cont">
        Lo sentimos pero la p&aacute;gina que busca no existe.
        </div>
        <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottom.jpg" alt="bottom" class="im" />
       </div>
       <div class="clear space"></div>
        <? endif; ?>
<?php get_footer
(); ?>
EDITO: Ya pude arreglarlo.
En el sidebar agregué también un wp_reset_query(); antes de el query, usé get_the_category() asignandolo a la variable $cat, después en la variable $category le dí sólo un valor del array $cat, en éste caso sólo quería un resultado, y quería el ID de la categoría, por lo que quedó así.... yo pude arreglarlo, algo que no encontré nunca por ningun lado sin que fuera con un Plug-In, espero que a alguien le sirva esto, falta depurar un poco el código, se que debe haber cosas que no son realmente necesarias, pero vamos progresando :)

Código de mi sidebar, menu de post de la misma categoría....
Código PHP:
<div class="lateral left">
            <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/toplat.jpg" alt="enfermedades" /><br />
            <ul>
             <?php 
            wp_reset_query
();
            
$catget_the_category();
            
$category=$cat[0]->cat_ID;
            
$posts=query_posts('cat='.$category);
            if(
have_posts()): while(have_posts()): the_post();
            
?>
            <li><a href="<?php the_permalink();?>"><?php the_title(); ?></a></li>
            <?php
            
endwhile; endif; wp_reset_query(); ?>
            </ul>
            <img src="<?php echo substr($PHP_SELF,0,-9); ?>wp-content/themes/gastro/img/bottomlat.jpg" alt="bottom" />
</div>


TODO ARREGLADO ----- GRACIAS

PD: jijijiji, creo que soy de esas personas que preguntan y se contestan a sí mismas.... en cierto punto es bueno
__________________
Estudio de diseño web
Huasteca Publicidad

Última edición por letsalcido; 20/05/2010 a las 11:53

Etiquetas: Ninguno
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 20:21.