Получить список категорий ids

Я работаю над портфолио с фильтрами, основанными на пользовательском типе сообщений. Эти фильтры должны отображать только категории для сообщений, отображаемых в портфолио, поскольку пользователь может указать их по идентификатору в коротком кодексе – [портфолио ids = "1,2,3"] И я не могу получить список этих категорий идентификаторы.

Вот простой пример того, что я пытаюсь сделать:

Список пользовательских идентификаторов сообщений из короткого кода:

$ids 

Массив из тех же идентификаторов:

 $id_array = explode(',', $ids) 

Интересующий var, который должен вернуть список категорий id:

 $cat_ids = ??? 

Затем мы получаем только категории с необходимым id:

 $categories = get_categories( array( 'include' => $cat_ids, 'taxonomy' => 'portfolio_category' ) ); 

И, наконец, наши категории отображаются:

 echo '<ul>'; echo '<li><a href="#" data-filter="isotope-item" class="active">all</a></li>'; foreach ($categories as $category) { if( isset( $category->term_id ) ){ echo '<li><a href="#" data-filter="'.$category->category_nicename.'">'.$category->cat_name.'</a></li>'; } } echo '</ul>'; 

Клоаст, что я получаю:

 $cat_ids = wp_get_object_terms( $ids, 'portfolio_category', array('orderby' => 'name', 'fields' => 'ids') ); 

Но он возвращает только один идентификатор

Solutions Collecting From Web of "Получить список категорий ids"

Хорошо, я думал, что у меня не было вариантов после нескольких часов, потраченных на этот маленький кусок кода. Но почему-то мне удалось получить результат, сразу после того, как я безнадежно разместил здесь этот вопрос.

 $terms = wp_get_object_terms( $id_array, 'portfolio_category' ); $new_array = array(); foreach($terms as $key => $term) { $new_array[$key] = $term->term_id; } $cat_ids = implode(',', $new_array); $categories = get_categories( array( 'include' => $cat_ids, 'taxonomy' => 'portfolio_category' ) ); 

Может быть, кто-нибудь может прокомментировать это решение?