martes, 31 de mayo de 2016

WordPress - Retornar posts en base a un criterio (get_posts)

En ese breve ejemplo mostraremos como:
  • Realizar una consulta de registros de un post type
  • Especificando filtro y orden
  • Y cantidad de registros
El resultado es mostrar la información dentro de un bloque HTML en nuestra página de inicio tal como se ve en esta imagen:



El código:

        <?php
        
          $hoy = date("Ymd"); 
        
          $args = array( 
            'numberposts' => 3,
            'post_type' => 'evento', 
            'meta_key' => 'fecha_evento',
            'orderby' => 'meta_value', 
            'order' => ASC,
            'meta_query' => array(
                'key' => 'fecha_evento',
                'compare' => '>=',
                'value' => $hoy
           )
          );
          $eventos = get_posts( $args );
          
        foreach ( $eventos as $evento ) {
          
            $titulo = $evento->post_title;
            if ( strlen($titulo) >20 ) {
              $titulo = substr($titulo, 0, 20) . ' ...';
            }
          
            $fecha = get_post_meta($evento->ID,'fecha_evento',true);
            $mes = substr($fecha, 4, 2);
            $dia = substr($fecha, 6, 2);
          
            echo '<a href="' . get_permalink($evento->ID) . '">' . $dia . "/" . $mes . " " . $titulo . '</a><br/>';
          
          }
        
  wp_reset_postdata();
        
        ?>

0 comentarios:

Publicar un comentario en la entrada