Menu por ano e mês no WordPress

Mexendo no template de um blog do WordPress, precisei inserir aquele menu que tem os anos e os mêses desses anos para navegacão.

O código é simples:

<ul>
<?php
/**/
$years = $wpdb->get_col("SELECT DISTINCT YEAR(post_date) FROM $wpdb->posts WHERE post_status = "publish" AND post_type = "post" ORDER BY post_date DESC");
foreach($years as $year) :
?>
	<li><a href="<?php echo get_year_link($year); ?> "><?php echo $year; ?></a>
		<ul>
		<?	$months = $wpdb->get_col("SELECT DISTINCT MONTH(post_date) FROM $wpdb->posts WHERE post_status = "publish" AND post_type = "post" AND YEAR(post_date) = "".$year."" ORDER BY post_date DESC");
			foreach($months as $month) :
			?>
			<li><a href="<?php echo get_month_link($year, $month); ?>"><?php echo date( "F", mktime(0, 0, 0, $month) );?></a></li>
			<?php endforeach;?>
		</ul>
	</li>
<?php endforeach; ?>
</ul>

Com isso, será exibido um menu mais ou menos assim

2009

  • Maio
  • Abril
  • Março
  • Fevereiro
  • Janeiro

2008

  • Dezembro
  • Novembro

 

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *