Pero ¿por qué es tan popular? pues bien, uno de sus puntos más fuertes es que su interfaz es muy amigable, puedes crear contenidos llamativos muy rápidamente, agregar imágenes y videos prácticamente como si lo hicieras desde Word Office, y no solo eso, también es amigable con los motores de búsqueda lo que la hace una plataforma perfecta para el SEO.
El otro punto más fuerte de WordPress tiene que ver con su sistema de templates o plantillas, ya que también es muy sencillo mostrar la información que creaste en el administrador usando el Loop.
¿Qué es el loop de WordPress?
Según el mismísimo codex de WordPress, el loop es básicamente un código PHP usado para mostrar información de un post, lo que significa que podemos extraer cualquier pieza de contenido del post que creaste desde el administrador, esto incluye:Título
Contenido (texto, imágenes, video)
Fecha de creación
Fecha de modificación
ID del post
Slug
Categoría
Etiquetas
Imagen destacada
Extracto
Comentarios
Campos personalizados
y mucha más información
Cabe anotar que el loop de WordPress funciona dependiendo de un contexto, por ejemplo, si el loop es llamado en una plantilla single.php que es la encargada de mostrar un post, el loop funcionará en el contexto del post trayendo la información específica de ese post.
El Loop se ve más o menos así:
<?php if ( have_posts() ) { while ( have_posts() ) { the_post(); // // Etiquetas de template // } // end while } // end if ?>
En el código anterior el método have_posts() revisa en la base de datos si hay información para el post que queremos mostrar y si hay alguna, comienza a iterar en ella. El método the_post() prepara toda la información del contenido desde la base de datos respetando un índice.
No te preocupes si aún no entiendes de lo que estamos hablando, el código es un camino de práctica, por lo que te recomendamos seguir leyendo el post.
Tutorial recomendado
Crea tu portafolio con HTML y CSS
Aprende los conceptos básicos de HTML y CSS mientras creas tu propio portafolio desde cero.¡Quiero aprender!
Etiquetas para usar dentro del loop de WordPress
El Loop de WordPress cuenta con la habilidad de modificar ciertas etiquetas especiales para usarlas cuando se está iterando en los datos, estas etiquetas brindan información específica del contenido guardado en la base de datos por ejemplo:the_title(): devuelve el título
the_content(): devuelve el contenido
the_post_thumbnail(): devuelve la imagen destacada
the_date(): devuelve la fecha de creación del artículo
the_excerpt(): devuelve un extracto del contenido
Puedes revisar la lista completa de etiquetas en el codex de WordPress
Para imprimir el título de un artículo en el archivo single.php sería de la siguiente manera:
<?php if ( have_posts() ) { while ( have_posts() ) { the_post(); echo <h1>; the_title(); echo </h1>; } // end while } // end if ?>
El contexto del loop de WordPress
Como ya te comenté antes, el Loop trae información por defecto dependiendo de su contexto, por ejemplo si lo invocas desde una archivo de categoría traerá todos los post pertenecientes a esa categoría. Si lo invocas en el archivo index.php de tu plantilla traerá los post más recientes y si lo invocas en un archivo single mostrará la información de un solo artículo.¿Pero cómo modificar el Loop si quiero sólo ver los post de una categoría, o si quiero reordenar por orden alfabético los post? es allí donde se hace importante averiguar de los querys personalizados del Loop, más conocidos com WP_Query.
Alterando el Loop de WordPress con WP_Query()
En muchas ocasiones el Loop por defecto no es suficiente, a veces queremos excluir ciertos post, ordenarlos diferentes o filtrarlos de alguna manera para traer información específica. Por suerte WordPress provee una manera muy sencilla de hacerlo a través de WP_Query().Pongamos un ejemplo, tenemos un blog de tecnología y en él hay muchas categorías. El problema es que sólo queremos mostrar los post de la categoría “Android”, el código se vería más o menos así:
<?php $android_query = new WP_Query( category_name=android ); if ( $android_query->have_posts() ) { while ( $android_query->have_posts() ) { $android_query->the_post(); echo <h1>; the_title(); echo </h1>; } // end while } // end if ?>
En el código anterior lo que hice fue crear la variable $android_query la cual contenía un nuevo WP_Query con el parámetro ‘category_name=android’, lo que se traduce como “trae todos los post de la categoría android”. Luego en el Loop de WordPress pasamos esa variable y aplicamos el método have_post() para verificar si ese query tiene información y seguimos iterando en ella.
Para ver la lista completa de filtros y parámetros puedes ir al codex de WordPress.
Algunos ejemplos del uso del loop de WordPress
Obtener los 3 post más recientes de una categoría
<?php $args = array( category_name => news, posts_per_page => 3 ); $my_query = new WP_Query( $args ); if ( $my_query->have_posts() ) { while ( $my_query->have_posts() ) { $my_query->the_post(); // Etiquetas de template: ej: the_title(). } } wp_reset_postdata(); ?>Obtener todos los post del año actual para un autor
<?php // Obtiene el año actual. $current_year = date( Y ); $args = array( // Consulta por el nombre de autor “John”. author => john, // Obtiene los post de este año. year => $current_year ); $my_query = new WP_Query( $args );?>Mostrar los post ordenados por cantidad de comentarios
<?php $args = array( // Ordena por cantidad de comentarios. orderby => comment_count ); $my_query = new WP_Query( $args ); ?>Como ves, es muy fácil mostrar la información de tus post de la manera que quieras con WordPress y su maravilloso Loop. Te aconsejo practicar y tomarlo con calma si algo te falla, de cualquier modo te invito a comentar si tienes algún problema o simplemente para comentar qué te ha parecido este post. Nos vemos en el próximo.
The post appeared first on Tutopress.