Пользовательский тип сообщения годовой / ежемесячный архив
У меня есть собственный пост типа "новости" на моем сайте Wordpress. Я использую плагин Advanced Custom Fields для добавления метаданных к каждому сообщению.
Я хочу создать массив новостей в виде архива:
[2013]
[January] => 5
[2012]
[January] => 20
[February] => 10
[2011]
[April] => 30
Мне удалось заставить это работать, используя:
global $wpdb;
$news = $wpdb->get_results(
"SELECT wp_posts.post_date, COUNT(wp_posts.ID) as count
FROM $wpdb->posts
WHERE
wp_posts.post_type = 'news' AND
wp_posts.post_status = 'publish' AND
wp_posts.post_date <= CURDATE() AND
wp_posts.post_date >= DATE_SUB(CURDATE(), INTERVAL 3 YEAR)
GROUP BY YEAR(wp_posts.post_date), MONTH(wp_posts.post_date)
ORDER BY wp_posts.post_date DESC",
ARRAY_A);
$archive = array();
foreach ($news as $post):
$year = date('Y', strtotime($post['post_date']));
$month = date('m', strtotime($post['post_date']));
$month_name = date('F', strtotime($post['post_date']));
$post['url'] = 'NOT SURE ABOUT URL';
$archive[$year][$month_name] = $post;
endforeach;
Мне нужно иметь возможность связать с определенными годами и месяцами, используяhttp://example.com/2012/
а такжеhttp://example.com/2012/10/
.
Поскольку это связано с пользовательским типом сообщения "новости", я не уверен, как это сделать?