2017-03-22 14 views
0

以下のコードは、 'make'というカスタムタクソノミのすべてのエントリの選択オプションリストを取得するのに本当にうまく機能します。それは完璧な親レベルのものを引っ張るだけです。Wordpress WP_Term_Queryカスタム分類選択オプション

  <select id="make" name="make"> 
       <option value="">--</option> 
       <?php $term_query = new WP_Term_Query(array('taxonomy' => 'make', 'parent' => 0)); if (! empty($term_query->terms)) { 
        foreach ($term_query ->terms as $term) { 
         echo '<option class="' . $term->name . '" value="' . $term->name . '">' . $term->name . '</option>'; 
        } 
       } else {  
       };?> 
      </select> 

しかし、私はこのコードの別の同じバージョンを作成したいと思いますが、代わりに、すべての親の値のリストに引っ張って、それがすべての子値を引く必要があります。特定のページや投稿ではなく、カスタムタクソノミーのすべての子エントリの選択リストを出力し、親を無視して出力する必要があります。どんな助けも大いにありがとう!

答えて

1

あなたが選択する2番目のを構築するためにget_term_childrenget_term_by機能を使用することができます。

<select id="make" name="make"> 
<option value="">--</option> 
<?php 
    $term_query = new WP_Term_Query(array('taxonomy' => 'make', 'parent' => 0)); 
    if (! empty($term_query->terms)) { 
     foreach ($term_query ->terms as $term) { 
      $term_children = get_term_children($term->term_id, 'make'); 
      foreach($term_children as $children){ 
       $child = get_term_by('id', $children, 'make'); 
       echo '<option class="' . $child->name . '" value="' . $child->name . '">' . $child->name . '</option>'; 
      } 
     } 
    } else { 
    }; 
?> 
</select> 
+0

アメージング - ありがとうございました!!! – dmt

関連する問題