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

Paginación de query_post()

Estas en el tema de Paginación de query_post() en el foro de WordPress en Foros del Web. Desgraciadamente tengo que acudir aquí porque no sé si me acabaré suicidando. He mirado cientos de páginas y códigos en Internet y el mío en ...
  #1 (permalink)  
Antiguo 20/05/2011, 17:59
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Exclamación Paginación de query_post()

Desgraciadamente tengo que acudir aquí porque no sé si me acabaré suicidando.
He mirado cientos de páginas y códigos en Internet y el mío en teoría debería de ser correcto. Aún así, a pesar de calcular correctamente el número de páginas en base al número de resultados por página... cada vez que intento pasar a una nueva página, me sigue mostrando siempre aquella en la que estoy.
Si alguien puede ayudarme por favor, le puedo ingresar dinero por paypal o lo que sea...
Muchas gracias de antemano.
El código es
Código PHP:
<?php
$paged 
= (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts("post_type=air_imagen&posts_per_page=10&order=DESC&order_by=date&&paged=$paged&meta_key=air_imagen_usuario&meta_value=".$nick_usuario);
?>
<?php 
while (have_posts ()) : the_post(); ?>
Esto como habrán adivinado es Wordpress, por favor RUEGO una ayudita...
  #2 (permalink)  
Antiguo 20/05/2011, 20:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Paginación de query_post()

Cita:
&order_by=date&&paged=$paged&meta_key=air_imagen_usuario
Desconozco como funciona WP y la forma en que reliza la paginacion, pero, de entrada, sobra por ahi un &
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 20/05/2011, 22:20
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Paginación de query_post()

Tal vez sea la forma como montas las direcciones. Es decir, verifica (ya que para que te puedan ayudar mejor debes esperar que un moderador te mueva al foro de wordpress) lo que estás usando para crear las direcciones, puede que haga un "append" en vez de re-escribirla.

PD: Tan malo somos que es desgraciado escribir aqui
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #4 (permalink)  
Antiguo 21/05/2011, 03:11
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 19 años, 10 meses
Puntos: 832
Respuesta: Paginación de query_post()

Efectivamente es lo que menciona Triby, el doble "&&".

Sugerencia: trata de usar comillas simples en los parámetros.
  #5 (permalink)  
Antiguo 21/05/2011, 10:52
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Respuesta: Paginación de query_post()

Buenas a todos, y gracias por tomaros la molestia de responder, efectivamente como comentáis sobra un amp, creo que ha sido un error al transcribir aquí el mensaje, porque en mi código solo hay un &. De todas maneras ni con eso funciona, cada uno de los botones de navegación sigue abriendo la misma página una y otra vez.
He probado también las comillas simples, pero sigue sin funcionar.
Aún así, gracias como digo por tomaros la molestia.
  #6 (permalink)  
Antiguo 21/05/2011, 11:13
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Paginación de query_post()

Pero, no veo porque el doble && afectaría Es verdad que no debe ser así, pero no veo porque eso afectaría.

Lo que yo creo es que el código está haciendo más bien un "append". Es decir, cada que vez que corre el código, entiendo que el último valor se añade al primero, es tal vez una idea. Bueno al menos es lo que pienso ya que como no hay más datos de lo que hace el código.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 21/05/2011, 11:55
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Respuesta: Paginación de query_post()

El script casi completo es este... por si sirve de ayuda. Es curioso que si cambio el 1 por cualquier otro número, carga directamente la página sin problemas, pero al utilizar la navegación, véase wp-paginate o los mismos de post_navi_links devuelve siempre la misma página.
Código:
<?php 
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
query_posts("post_type=air_imagen&posts_per_page=10&order=DESC&order_by=date&paged=$paged&meta_key=air_imagen_usuario&meta_value=".$nick_usuario); 
?>
<?php while (have_posts ()) : the_post(); ?>
// tabla para formatear la salida de los datos

<?php endwhile; ?> 

<?php } ?>
<?php echo $paged ?>
<?php if(function_exists('wp_paginate')) {
    wp_paginate();
} ?>
  #8 (permalink)  
Antiguo 21/05/2011, 11:58
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Respuesta: Paginación de query_post()

El echo lo he puesto para comprobar que la variable se declaraba e iba cambiando según paginaba solamente...
  #9 (permalink)  
Antiguo 21/05/2011, 22:22
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 19 años, 10 meses
Puntos: 832
Respuesta: Paginación de query_post()

Cita:
Iniciado por abimaelrc Ver Mensaje
Pero, no veo porque el doble && afectaría Es verdad que no debe ser así, pero no veo porque eso afectaría.
Porque son parámetros. Para saber cómo se construyen mira esto: http://www.forosdelweb.com/f18/aport...dpress-906484/

Bajo este esquema '&paged' es distinto que 'paged' y desde luego devuelve error.
  #10 (permalink)  
Antiguo 21/05/2011, 22:34
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Paginación de query_post()

Oh, bueno, si vas a leer una ruta usando como divisor & si puede producir un error, pero yo pensaba que se referería que pasando las variables y recogerlo por el método de $_GET, ya ahí no pasa nada, por eso mi duda.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #11 (permalink)  
Antiguo 21/05/2011, 22:55
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 19 años, 10 meses
Puntos: 832
Respuesta: Paginación de query_post()

Ya vez, todos los días se aprende algo "señor 10 años". :D

Aunque sospecho que también podría leer correctamente el '&' siempre y cuando se encuentre ubicado en el valor y no en el parámetro.
  #12 (permalink)  
Antiguo 21/05/2011, 23:15
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Paginación de query_post()

Te estás adelantando, ya vas por 30, será mejor que no sigas porque sino vas a estar el resto de tus días sin sorprenderme
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #13 (permalink)  
Antiguo 21/05/2011, 23:22
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Paginación de query_post()

@adriantht, te recomiendo que hagas un var_dump() a cada una de las variables y veas su comportamiento, así sabes donde es que sobre-escribe y te coloca la misma página. También usa exit para que detengas el proceso y así veas línea por línea lo que hace tu código.

Ahora no sé si esto es correcto, pero
Código PHP:
Ver original
  1. <?php
  2. $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
  3. query_posts("post_type=air_imagen&posts_per_page=10&order=DESC&order_by=date&paged=$paged&meta_key=air_imagen_usuario&meta_value=".$nick_usuario);
Está correcto colocar query_post después, que pasa si haces
Código PHP:
Ver original
  1. <?php
  2. query_posts("post_type=air_imagen&posts_per_page=10&order=DESC&order_by=date&paged=$paged&meta_key=air_imagen_usuario&meta_value=".$nick_usuario);
  3. $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

Edito: Ya veo porque, es que lo usas luego en el query_posts para indicar la página. Bueno pues haz lo del var_dump para que veas el comportamiento.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #14 (permalink)  
Antiguo 22/02/2012, 06:11
 
Fecha de Ingreso: febrero-2012
Mensajes: 1
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Paginación de query_post()

Hola!!!

Tu post me ha ayudado mucho! he conseguido hacer la paginación bien, yo lo que tenía mal era el query_post que lo hacia con un objeto new WP_Query.

Lo único que tengo distinto a lo tuyo es que al final del while hace falta limpiar el query_post para que no te recupera siempre lo mismo. Prueba a ver si esto te soluciona el problema...


Después de <?php endwhile;?> pon:

<?php global $more; $more = 0; ?>


HastaLuego!

Etiquetas: paginacion, php, query_posts
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 12:20.