特定术语的分类顺序例外

时间:2012-06-10 作者:Ünsal Korkmaz

我想为我的自定义分类顺序破例。有时您需要将“Other”选项作为最后一个选项,但当使用“orderby=name”调用分类法时,遗憾的是“Other”术语并没有作为最后一个选项列出。有没有合适的方法来处理这个例外?

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

以下是get_terms 在法典中:

$terms = get_terms("my_taxonomy");
 $count = count($terms);
 if ( $count > 0 ){
     echo "<ul>";
     foreach ( $terms as $term ) {
       echo "<li>" . $term->name . "</li>";

     }
     echo "</ul>";
 }
假设在my_taxonomy. 为了按照您的要求将其放在末尾,我们将检查每个术语是否匹配,并将其放在一边以备保管。然后,当循环完成时,我们将检查是否找到它,并在最后显示它。

e、 g。

 $terms = get_terms("my_taxonomy");
 $count = count($terms);
 if ( $count > 0 ){
     echo "<ul>";
     $other_term = null;
     foreach ( $terms as $term ) {
       if($term->name == \'other\'){
           $other_term = $term;
       } else {
           echo "<li>" . $term->name . "</li>";
       }
     }
     if($other_term != null){
       echo "<li>" . $other_term->name . "</li>";
     }
     echo "</ul>";
 }
把它想象成一个队列,先入先出,只有当一个叫“其他人”的人到达窗口处理时,一个警卫抓住他并把他拉到一边。当队列为空且所有人都已处理完毕时,警卫会将“其他”人放回队列末尾。

结束