Redwall
Redwall

Reputation: 1020

Get Children Terms from an Array of ID's?

I am using this code to post a list of all children terms for my taxonomy called 'location'

<?php
$termID = 10;
$taxonomyName = "location";
$termchildren = get_term_children( $termID, $taxonomyName );

echo '<ul>';
foreach ($termchildren as $child) {
$term = get_term_by( 'id', $child, $taxonomyName );
echo '<li><a href="' . get_term_link( $term->name, $taxonomyName ) . '">' . $term->name . '</a></li>';
}
echo '</ul>';
?> 

Currently the code is using term id 10 and getting the children for that and displaying in a list.

However I want to add multiple term id's and display a list of all the children of the id's I add.

My id's are 4,6,8,10,14,18,22

Looking for some help to figure out how to do this?

Cheers

Upvotes: 0

Views: 630

Answers (1)

Redwall
Redwall

Reputation: 1020

I figured out the answer to my own question. using get_terms will get all the terms retured, so there is no need to specify individual id's of my terms.

My code is

<?php
$args = array( 'taxonomy' => 'location' );

$terms = get_terms('location', $args);

$count = count($terms); $i=0;
if ($count > 0) {
    $cape_list = '<p class="location-archive">';

    foreach ($terms as $term) {
        $i++;
        $term_list .= '<li><span class="feature"><a href="/location/' . $term->slug . '" title="' . sprintf(__('View all post filed under %s', 'my_localization_domain'), $term->name) . '">' . $term->name . '</a></li>';
        if ($count != $i) $term_list .= ' &middot; '; else $term_list .= '</p>';
    }
    echo '<ul class="list">';
    echo $term_list;
    echo '</ul>';

}
?>

Upvotes: 1

Related Questions