按自定义分类存档页面中的类别对帖子进行分组

时间:2018-03-25 12:35:58

标签: php wordpress loops taxonomy-terms

我有一个名为colture的自定义分类法,我正在处理其归档模板。这些页面正确地显示了分类法的每个术语的帖子&#34; colture&#34;。现在我需要在默认类别中将它们分组为顶级(在顶层中有3个顶级)&#34; colture&#34;页面。我只需要在每个组的顶部放置<h1>(类titolo-applicazioni)。

我可能会考虑的一件事是,我在div中创建了每行3个帖子(包含类rowprodotti)。

我尝试嵌套两个查询:自定义分类查询中的顶级类别查询,以便首先显示某个分类术语中的帖子,然后按顶级类别对它们进行分组。

我在这里附加的循环只是为每个顶级类别重复每个帖子(当前术语的所有帖子)(因此每个帖子三次),而不对任何内容进行分组。

我错过了什么?

<?php 
if (is_tax() || is_category() || is_tag() ){
$qobj = get_queried_object();

$args = array(
  'parent' => 0,
  'orderby' => 'rand',
  'tax_query' => array(
    array(
      'taxonomy' => $qobj->taxonomy,
      'field' => 'id',
      'terms' => $qobj->term_id,
    )
  )
);

$random_query = new WP_Query( $args );

if ($random_query->have_posts()) {

?>
  <h1 class="titolo-applicazioni"><?php echo $category->slug;?></h1>
<?php

$i = 1;
echo '<div class="row prodotti">';

while ($random_query->have_posts()) {
$random_query->the_post();

    $cat_args = array(
    'orderby' => 'id',
    'hide_empty'=> 0,
    'parent'       => 0,
);

$categories = get_categories($cat_args);
foreach ($categories as $cat) {

?>

<div class="col-md-4 col-sm-12">
<!-- POST CONTENT -->
</div>

<?php if($i % 3 == 0) {echo '</div><div class="row prodotti">';}
$i++;?>

<?php 
} /* FOREACH */
} /* WHILE $RANDOM_QUERY HAS POSTS */
} /* IF $RANDOM_QUERY HAS POSTS */
} /* IF IS TAX */
?>

0 个答案:

没有答案