Получение сообщений по дате и категории

Я пытаюсь создать плагин для отображения названий сообщений и дат (которые будут отображаться как ссылки на эти записи) определенного диапазона дат и категории. До сих пор мне удалось отобразить сообщения между датами, но я не могу обернуть голову вокруг вещи категории WP. Я не знаю, как подключить эти два к одному SQL-запросу. Вот код:

function izvjestaj($attr) { global $wpdb; $start .= $attr['godina'] . "-09-01"; $end .= $attr['godina'] + 1 . "-08-31"; $cat = $attr['cat']; $posts = $wpdb->get_results(" SELECT * FROM wp_posts, wp_terms WHERE post_date BETWEEN '$start' AND '$end' ORDER BY post_date"); foreach($posts as $post): echo "<a href='./?p=" . $post->ID . "'>" . $post->post_date . " " . $post->post_title . "</a><br />"; endforeach; } add_shortcode('izvjestaj', 'izvjestaj'); 

Поэтому в основном я хочу создать плагин, который можно использовать с коротким кодом:

 [izvjestaj godina=2010 cat=some_category] 

и что он отображает названия и даты этих сообщений. В основном отчет о должностях.

(переводы cro> eng: 'godina' = 'year', 'izvjestaj' = 'report')

Пожалуйста, попробуйте следующий код:

Следующий код должен быть добавлен в функцию короткого кода

  global $wpdb; $start .= $attr['godina'] . "-09-01"; $end .= $attr['godina'] + 1 . "-08-31"; $cat = $attr['cat']; //$cat must be category name. $cat_term_id=get_term_by('name', $cat, 'category'); $term_id=$cat_term_id->term_id; $query = array( 'post_type' => 'post', 'tax_query' => array(array( 'taxonomy' => 'category', 'field' => 'term_id', 'terms'=>$term_id )), 'post_status' => 'publish', 'date_query' => array( array( 'after' => $start, 'before' => $end, 'inclusive' => true, ) ) ); $query_str = new WP_Query( $query );