30 junio 2010 1 Comment

Configurar el loop de wordpress

Hoy os traigo otro artículo para incorporarlo en la api de wordpress, el loop de wordpress es invocado cada vez que solicitamos articulos o páginas, en el index por ejemplo sale por defecto la solicitud de los últimos artículos publicados, en el archivo los articulos de cierto mes o cierta categoria, etc…

La api de wordpress nos permite una configuración bastante intensa de la forma de solicitar y mostrar contenido en los loops de wordpress, lo primero de todo es establecer los posts que queramos mostrar en el loop, se puede hacer usando la función query_posts();

query_posts('cat=4,5'); //Todos los que esten en la categoria 4 y 5
query_posts('tag=mitag'); //Los que tengan cierto tag...
query_posts('meta_key=nombrekey&meta_value=valorkey'); //Tenga un campo personalizado con dichos valores
 
 $categoria=$cat; // asignamos la actual categoria
 $query= 'cat=' . $categoria. '&orderby=date&order=ASC'; //ordenacion ascendente por fecha
 query_posts($query);


Como veis, tenemos mucho con que jugar a la hora de configurar el contenido del loop de wordpress, una vez hecho podemos crear el loop, tiene la siguiente estructura:

if (have_posts()) : while (have_posts()) : the_post();
//...
endwhile; else:
//...
endif;
wp_reset_query(); //Importante reiniciar loop para que wordpress funcione como habitualmente

Una vez dentro del loop podemos llamar a muchos valores de los posts, como por ejemplo el contenido, los tags, fecha, titulos, extracto, campos personalizados, la categoria… Aquí un ejemplo de como seria el código completo

query_posts('cat='.get_cat_ID('miCategoria')); //Establecemos el query con los posts de "miCategoria"
if (have_posts()) : while (have_posts()) : the_post();
     <p><h1><?php the_title(); ?></h1></p>
     <p><?php the_excerpt(); ?</p>
     <p><?php the_content(); ?></p>
<?php
$postMeta = get_post_custom_values('metaKey');
foreach ( $postMeta as $key => $value ) {
     echo "<p>$key  => $value ('metaKey')</p>"; 
}
?>
endwhile; else:
    echo "No se encontraron articulos relacionados, puede que le interese alguna de las siguientes categorias"
<ul>
   <?php wp_list_categories(); ?>
</ul>
endif;
wp_reset_query();

Artículos relacionados:

  1. Crear Plantillas de themes para post en WordPress Podemos crear una plantilla para publicar post especificos en wordpress...
  2. Crear y configurar un widget de wordpress Para crear un widget con wordpress solo debemos definirlo en...
  3. WordPress por 900€ Bueno, buscando keywords relacionadas sobre páginas web, salio una sugerencia...
  4. Integrar jquery con wordpress WordPress permite gracias a su api usar códigos de jquery,...

Leave a Reply