Restablecer una consulta en WordPress

Home » Blog » Restablecer una consulta en WordPress

A la hora de personalizar una consulta del bucle principal mediante WP_Query o crear una consulta personalizada es conveniente restablecer los datos del bucle para evitar errores en otras páginas, ya que el bucle se usa en todo momento en multitud de sitios.

Para ello es necesario usar la función:

  • wp_reset_postdata(): Esta función almacena la variable global $post de la consulta actual. Si realizamos una consulta sin restablecer la variable dejaremos $post con esta última información, pudiendo generar resultados inesperados.

Para corregir este problema incluye la función mencionada después del bucle personalizado.

Ejemplo

<?php

$ejemplo = new WP_Query('posts_per_page=10&orderby=rand');

while ($ejemplo->have_posts()):

$ejemplo->the_post();

the_title('<h1>','</h1>')

endwhile;

wp_reset_postdata();

?>

Al invocar esta función, se restablecerá la variable $post en la entrada actual, eliminando los elementos generados para esta página especifica, y evitando conflictos con el bucle en otras páginas.

2 bucles en una misma página

En ocasiones necesitamos tener 2 bucles en una misma página. El problema es que necesitamos que ambas consultas sean independientes, restableciendo las consultas…. para ello podemos usar la función: rewind_posts(); de la siguiente forma.

$ejemplo = new WP_Query('posts_per_page=10&orderby=rand');

while ($ejemplo->have_posts()):

$ejemplo->the_post();

the_title('<h1>','</h1>')

endwhile;

rewind_posts();

$ejemplo2 = new WP_Query('posts_per_page=5&orderby=title');

while ($ejemplo2->have_posts()):

$ejemplo2->the_post();

the_title('<h1>','</h1>')

endwhile;

Categorías


Foto de Iñigo Mezo Alvarez

IÑIGO MEZO ALVAREZ (IMAcreste)


Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Las reseñas son opiniones que las personas dejan en la página local de Google. Si son positivas, estas reseñas ayudarán a mejorar la confianza y credibilidad de una marca.

Participa en nuestro sorteo enviando un email con tu nombre y el asunto «Sorteo AUDITORÍA SEO». Se realizara un sorteo cada mes.