WordPress: Cómo mostrar los posts más populares de una categoría

0 - , , - 28/03/2011 20:21:25

El siguiente código nos muestra los posts más populares (más comentados) dada una categoría:

<?php
$args=array(
  'cat' => 3,
  'orderby' => 'comment_count',
  'order' => 'DESC',
  'post_type' => 'post',
  'post_status' => 'publish',
  'posts_per_page' => 6,
  'caller_get_posts'=> 1
);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) { ?>
	<ul>
	<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
	<li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
	<?php  endwhile; ?>
	</ul>
<?php }

wp_reset_query(); ?>

El código se inserta en el lugar en el que deseemos mostrar esta información.

Esta línea indica de que categoría deseamos mostrar los posts más populares. Reemplaza el 3 por el Id de la categoría que deseas mostrar.

'cat' => 3,

La siguiente línea indica cuantos posts deseas mostrar.

'posts_per_page' => 6,

Visto en dynamicwp.net » »

WordPress: Detectar usuarios de iPhone

0 - , , - 18/03/2011 20:22:57

Poner el siguiente código en el lugar en el que desees comprobar si es un usuario de iphone o no.

<?php
global $is_iphone;
if($is_iphone) {
	// Código para el usuario de iPhone.
}
?>

El código hace uso de una variable global de WordPress.

WordPress: Listar páginas

0 - , - 12/02/2011 09:16:28

Si quieres listar todas las páginas disponibles en WordPress (ten en cuenta que páginas y entradas o "posts" tienen un significado diferente en WordPress) existe una función denominada wp_list_pages que lo permite de un modo muy sencillo. Cuando se utiliza sin parámetros, listará todas las páginas en orden alfabético.

<?php wp_list_pages();?>

Para listar páginas de modo específico se puede hacer pasando un parámetro a la función, haciendo referencia a los Id de las páginas a incluir. En el ejemplo siguiente se mostrarán sólo dos páginas (las páginas que tienen Ids 4 y 5).

<?php wp_list_pages('include=4,5');?>

También se pueden excluir determinadas páginas utilizando un parámetro de exclusión:

<?php wp_list_pages('exclude=4,5');?>

Como se ha mencionado anteriormente, el valor predeterminado de wp_list_pages para la ordenación es alfabético. Sin embargo, puede cambiar el orden de la lista mediante el parámetro sort_column. El parámetro sort_column puede tener los siguientes valores:

- post_content: ordena alfabéticamente (valor predeterminado)
- menu_order: ordena por el orden de las páginas
- post_date: ordena por fecha de creación
- post_modified: ordena por la fecha/hora de la última modificación
- ID: ordena por ID de página
- post_author: ordena por el ID del autor de la página
- post_name: ordena alfabéticamente por el slug

El siguiente código permite ordenar por fecha de creación en lugar de por orden alfabético, que es el predeterminado:

<?php wp_list_pages('sort_column=post_date'); ?>

Las páginas pueden tener subpáginas, y estas subpáginas pueden tener subpáginas. ¿Qué pasa si sólo deseas enumerar páginas de nivel superior y excluir sus subpáginas? Controlar la profundidad funciona muy bien cuando se utiliza para generar menús desplegables con submenús.

Se puede utilizar el parámetro profundidad así:

<?php wp_list_pages('depth=1'); ?>