Cómo mostrar las publicaciones de la semana pasada en WordPress

Cómo mostrar las publicaciones de la semana pasada en WordPress / Tutoriales

Muchos de nuestros lectores principiantes pronto comienzan a modificar sus temas de WordPress, por eso tenemos una hoja de trucos de WordPress para ayudarlos a comenzar. Esto trae algunos retos interesantes para los nuevos usuarios. Uno de esos lectores, recientemente nos preguntó cómo mostrar las publicaciones de la semana pasada en WordPress. Solo querían agregar una sección en su página de inicio que mostrara publicaciones de la semana anterior. En este artículo, le mostraremos cómo mostrar las publicaciones de la semana pasada en WordPress.

Antes de mostrarle cómo mostrar las publicaciones de la semana anterior, primero veamos cómo puede mostrar las publicaciones de la semana actual usando WP_Query. Copie y pegue el siguiente código en el archivo functions.php de su tema o en un complemento específico del sitio.

 función wpb_this_week () $ week = date ('W'); $ año = fecha ('Y'); $ the_query = new WP_Query ('year ='. $ year. '& w ='. $ week); if ($ the_query-> have_posts ()): while ($ the_query-> have_posts ()): $ the_query-> the_post (); ?>        

En el código de ejemplo anterior, primero descubrimos la semana y el año actuales. Luego usamos esos valores en WP_Query para mostrar las publicaciones de la semana actual. Ahora todo lo que necesitas hacer es agregar en su archivo de tema donde desea mostrar las publicaciones.

Esto era simple, ¿no? Ahora para mostrar las publicaciones de la semana pasada, todo lo que necesita hacer es menos 1 del valor de la semana. Pero si esta es la primera semana del año, entonces obtendrás 0 para la semana y el año actual en lugar del año pasado. Aquí es cómo se soluciona ese problema.

 función wpb_last_week_posts () $ thisweek = date ('W'); si ($ thisweek! = 1): $ lastweek = $ thisweek - 1; else: $ lastweek = 52; terminara si; $ año = fecha ('Y'); if ($ lastweek! = 52): $ year = date ('Y'); else: $ año = fecha ('Y') -1; terminara si; $ the_query = new WP_Query ('year ='. $ year. '& w ='. $ lastweek); if ($ the_query-> have_posts ()): while ($ the_query-> have_posts ()): $ the_query-> the_post (); ?>        

En el código de ejemplo anterior hemos colocado dos cheques. La primera verificación establece el valor de la última semana en 52 (que es la última semana de un año) cuando el valor de la semana actual es 1. La segunda verificación establece el valor del año en el año pasado cuando el valor de la última semana es 52.

Para mostrar las publicaciones de la semana pasada, todo lo que necesita hacer es agregar al archivo de plantilla de tu tema donde te gustaría mostrarlos. O si desea tener un código abreviado para poder agregarlo a una página o un widget, simplemente agregue esta línea debajo del código dado arriba.

 add_shortcode ('lastweek', 'wpb_last_week_posts'); 

Ahora puede utilizar este código abreviado en una publicación, página o widget como este:

[la semana pasada]

Tenga en cuenta que no siempre necesita WP_Query para crear consultas personalizadas. WordPress incluye varias funciones para ayudarlo a mostrar publicaciones recientes, archivos, comentarios, etc. Si hay una manera más fácil de usar las funciones existentes, entonces realmente no necesita escribir sus propias consultas..

Esperamos que este artículo te haya ayudado a mostrar las publicaciones de la semana pasada en WordPress. Experimente con el código y modifíquelo para satisfacer sus necesidades. Háganos saber si tiene alguna pregunta dejando un comentario a continuación o únase a nosotros en Twitter.