Explicación del loop en WordPress

El loop es el núcleo absoluto del funcionamiento de WordPress. Es el encargado de mostrar el post o los posts que tengas en tu base de datos. La estructura básica es la siguiente

No deja de ser un bucle while que se inicia al cumplir la condición if. Para que comience el bucle while es preciso comprobar que hay post que recorrer, ahí entra la función have_posts(). Lo que permite la función the_post() es poder usar otras funciones relacionadas con el post que se está recorriendo.

Pondré el ejemplo de un loop explicado paso a paso. Primero de todo, comprobamos si hay posts en la la consulta (have_posts()).

De haber posts tendrá como resultado el comienzo del bucle

Con el bucle while, se mostrarán los posts siempre y cuando haya un post que mostrar. La funcion the_post() permite usar funciones para obtener datos del post que se está recorriendo. Ahora comenzaría la estructura del post

Se abre la etiqueta div que contendrá el contenido del post. Con la funcion the_ID() se obtiene el ID del post que está en ese momento en el bucle. Proseguimos con el contenido del div

Empieza con el título del post que se compone de un <h2> y en su interior un vínculo. El vínculo tiene una URL al post el concreto sacado con la función the_permalink() y el título del post se obtiene con la función the_title().

Se obtiene la imagen destacada del post (thumb).

Este <p> contendrá la información referente a la fecha de publicación (the_time()) y autor (the_author()).

A continuación, con la función the_content() se muestra un pequeño extracto del contenido. El string ‘leer más’ será el texto de un vínculo que llevará al post completo.

Para finalizar el post se crea un elemento <p> que contiene las etiquetas del post sacadas con la funcion the_tags(). Está función cuenta con 3 parámetros que escriben contenido:

  1. Antes de la etiqueta
  2. Entre etiquetas
  3. Final de la etiqueta

Luego se muestran las categorías con la función the_category(). El parámetro consta de una string o cadena de texto que separa las categorías, en este caso es una coma.

Y para finalizar se muestran el número de comentarios y el cierre del <div> post . Los parámetros de la función comments_popup_link() son los diferentes textos que se muestran en las situaciones de:

  1. 0 comentarios.
  2. Al menos 1 comentario.
  3. Haber más de un comentario.

El final del código consta del cierre del bucle while y en caso de no haber post que mostrar imprime un mensaje.

Todo el código del loop quedaría de la siguiente manera

El have_posts() funciona mediante una consulta que emplea una serie de parámetros recibidos. Para que sepas que parámetros va a utilizar para realizar una consulta puedes insertar la siguiente línea antes de un loop.

En el caso de que lo uses en el archive.php podría mostrar algo así:

posts_per_page=10&what_to_show=posts&orderby=date&order=DESC&category_
name=wordpress

Vendría a ser mostrar 10 post por página en orden descendente por fecha y con la categoría wordpress.

Y hasta aquí el post de hoy, espero que os haya sido ameno. A Seguir picando 🙂