Как вы можете настроить wp_get_archives ();с архивами Wordpress - PullRequest
0 голосов
/ 23 ноября 2010

Я хочу настроить свои архивы для сортировки по месяцам, но если это было в предыдущем году, сгруппировать себя в ежегодную категорию Прямо сейчас у меня есть:

<ul><?php wp_get_archives('type=postbypost&limit=10'); ?></ul>

Это показывает последние 10 сообщений. Я знаю, что по месяцам будет сортироваться следующее:

<ul><?php wp_get_archives('type=monthly'); ?></ul>

Но как мне отсортировать его по годам, если месяц меньше 12? Я хочу, чтобы это выглядело следующим образом:

  • март 2010
  • Февраль 2010
  • январь 2010
  • 2009

Заранее спасибо.

1 Ответ

2 голосов
/ 23 ноября 2010

Я не знаю, есть ли встроенный способ сделать это, я бы использовал функцию с пользовательским запросом, как это:

  SELECT COUNT(ID) posts, YEAR(post_date) y, MONTH(post_date) m 
    FROM $wpdb->posts 
   WHERE post_status = 'publish'
GROUP BY y, m
  HAVING y = YEAR(NOW())
UNION
  SELECT COUNT(ID), YEAR(post_date) y, 0
    FROM $wpdb->posts
   WHERE post_status = 'publish'
GROUP BY y
  HAVING y < YEAR(NOW())
ORDER BY y DESC, m DESC;

затем отформатируйте результаты со ссылками и все.

...