Здрасьте, я баран.
Подскажите, что здесь не так, почему возвращает пустой массив и вообще как бы это выглядело будь у меня руки вместо копыт.
function RecursiveTest($parent_id) {
$children = array();
$args = array(
'post_type' => 'Something',
'post_parent' => $parent_id,
'posts_per_page' => 100
);
$query_result= new WP_Query($args);
for ($i=0; $i < count($query_result->posts); $i++) {
$gchildren = RecursiveTest($query_result->posts[$i]->ID);
}
if( !empty($gchildren) ) {
$children = array_merge($children, $gchildren);
}
$children = array_merge($children, $query_result);
return $children;
}
Делаю так
$test = RecursiveTest(get_the_ID()); // с ID все в порядке
echo count($test); // 0
Почему?
P.S.
Изначально было так, но и так и так на выходе пустой массив как правильно сделать, не подскажете?
....................
for ($i=0; $i < count($query_result->posts); $i++) {
$gchildren = RecursiveTest($query_result->posts[$i]->ID);
if( !empty($gchildren) ) {
$children = array_merge($children, $gchildren);
}
}
$children = array_merge($children, $query_result);
return $children;
.....................