Cómo mostrar los mensajes de la semana pasada en WordPress
Muchos de nuestros lectores de nivel principiante pronto empiezan a modificar sus temas de WordPress, por eso tenemos una hoja de trucos de temas de WordPress para ayudarles a empezar. Esto plantea algunos retos interesantes para los nuevos usuarios. Uno de estos lectores, recientemente nos preguntó cómo mostrar las entradas de la semana pasada en WordPress. Sólo querían añadir una sección en su página de inicio que mostrara las entradas de la semana anterior. En este artículo, te mostraremos cómo mostrar los posts de la semana pasada en WordPress.
Antes de que le mostremos cómo mostrar los mensajes de la semana anterior, veamos primero cómo puede mostrar los mensajes 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 plugin específico del sitio.
1234567891011121314functionwpb_this_week() { $week= date('W');$year= date('Y');$the_query= newWP_Query( 'year='. $year. '&w='. $week);if( $the_query->have_posts()) : while( $the_the_query->have_posts() ) $the_query->the_post(); ?>the_post()
""title="Enlace permanente a "> En el código de ejemplo anterior, primero descubrimos la semana y el año actual. Luego usamos esos valores en WP_Query para mostrar los mensajes de la semana actual. Ahora todo lo que tienes que hacer es añadir en el archivo de tema donde quieres que se muestren los mensajes.
Esto fue simple, ¿no? Ahora para mostrar los mensajes de la semana pasada todo lo que necesitas hacer es menos 1 del valor de la semana. Pero si esta es la primera semana del año, entonces usted recibirá 0 por la semana y el año en curso en lugar del año pasado. Así es como se arregla ese problema.
1234567891011121314151616171819202122232425functionwpb_last_week_posts() { $thisweek= date('W');if($thisweek!= 1) :$lastweek= $thisweekk- 1; else: $lastweek= 52;endif; $year= date('Y');if($lastweek!= 52) :$year= date('Y');else: $year= date('Y') -1; endif;$the_query= newWP_Query('year='. $year. '&w='. $lastweek);if( $the_query->have_posts() ) : while( $the_query->have_posts()) : $the_query->the_post(); ?>
""title="Enlace permanente a "> En el código de ejemplo anterior hemos colocado dos cheques. La primera verificación fija el valor de la última semana a 52 (que es la última semana del año) cuando el valor de la semana actual es 1. La segunda verificación fija el valor del año al del año pasado cuando el valor de la última semana es 52.
Para mostrar los mensajes de la semana pasada todo lo que necesitas hacer es añadir al archivo de plantilla de tu tema donde te gustaría mostrarlos. O si quieres tener un código abreviado para que puedas añadirlo a una página o a un widget, entonces simplemente añade esta línea debajo del código dado arriba.
1add_shortcode('última semana', 'wpb_last_week_posts');
Ahora puede utilizar este código abreviado en un mensaje, página o widget de este tipo:
semana pasada]
Tenga en cuenta que no siempre necesita WP_Query para crear consultas personalizadas. WordPress viene con un puñado de funciones para ayudarte a mostrar los mensajes recientes, archivos, comentarios, etc. Si hay una manera más fácil de usar las funciones existentes, entonces no es necesario que escriba sus propias consultas.
Esperamos que este artículo le haya ayudado a mostrar los artículos 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.
Deja una respuesta