wordpress获得条款和订单

时间:2013-01-28 10:34:50

标签: wordpress taxonomy

我使用以下代码查询自定义分类中的术语:

<?php
  $term_slug    = get_query_var('term');
  $taxonomyName = get_query_var('taxonomy');
  $current_term = get_term_by('slug', $term_slug, $taxonomyName);
  $termchildren = get_term_children($current_term->term_id, $taxonomyName);
  foreach ($termchildren as $child) {
    $term = get_term_by('id', $child, $taxonomyName);

    echo '<li id="mid"><a href="#tab-' . $slug = $term->slug . '">' . $term->name . '</a></li>';

  }
?>

这一切都很棒!我的问题是,我想通过菜单顺序或类似的东西来订购它。目前他们是随机的!

有人可以建议我需要做什么吗?

干杯,丹

1 个答案:

答案 0 :(得分:12)

尝试使用get_terms功能。你的代码比这样(你可以指定orderby和order arg)

<?php
  $term_slug     = get_query_var('term');
  $taxonomy_name = get_query_var('taxonomy');
  $current_term  = get_term_by('slug', $term_slug, $taxonomy_name);
  if ( true === is_a( $current_term, 'WP_Term' ) ) {
      $args = array(
          'child_of' => $current_term->term_id,
          'orderby'  => 'id',
          'order'    => 'DESC'
      );
      $terms = get_terms($taxonomyName, $args);
      if ( true === is_array( $terms ) ) {
          foreach ($terms as $term) {
              echo '<li id="mid"><a href="#tab-' . esc_attr( $term->slug ) . '">' . esc_html( $term->name ) . '</a></li>';
          }
      }
  }
?>