WordPress - Получение сообщений по пользовательскому типу и категории сообщений, при этом каждая категория автоматически включается в DIV
Извините за длинное название вопроса. Я пытался быть точным.
Мне нужно разработать запрос WordPress, который будет автоматически получать сообщения из определенного пользовательского типа сообщения, определять, как каждая публикация классифицируется, а затем выводить сообщения по категориям на страницу, причем каждая категория заключена в свой собственный DIV.
Например, у меня есть пользовательский тип записи под названием «Картографические данные». В этом пользовательском типе записи у меня есть иерархическая таксономия, которую я назвал «Категории», а в рамках этой таксономии - ряд категорий, «Категория № 1», «Категория № 2» и т. Д. И т. Д. Каждая категория имеет количество сообщений.
Таким образом, запрос должен получить список всех категорий в пользовательском типе записи, а затем вывести что-то вроде этого:
<code><div id="category-1"> <div class="post">This is a post in Category 1</div> <div class="post">This is another post in Category 1</div> </div> <div id="category-2"> <div class="post">This is a post in Category 1</div> <div class="post">This is another post in Category 1</div> </div> </code>
У меня есть следующий код, который работает с системой категорий WordPress по умолчанию, однако мне нужно либо переписать ее, либо обновить, чтобы она могла работать с пользовательскими типами записей и их таксономиями.
<code><?php $cat_args=array(); $categories=get_categories($cat_args); foreach($categories as $category) { $args=array( 'category__in' => array($category->term_id), ); $posts=get_posts($args); if ($posts) { echo '<div class="cat" id="' . $category->slug.'" name="' . $category->name.'">'; foreach($posts as $post) { setup_postdata($post); ?> <?php the_title();?> <?php the_content();?> <?php } // foreach($posts echo '</div>'; } // if ($posts } // foreach($categories ?> </code>
Если бы кто-нибудь мог предоставить мне обновленный код или рабочий пример, я был бы очень признателен.