Функция в single.php не получает правильное значение из настраиваемого поля

Я думаю, что решение снова настолько глупо, и я сожалею заранее, что я трачу ваше время на это. На прошлой неделе у меня были проблемы с одной и той же функцией, и это не сработало для меня, потому что я не задал $ post как глобальную переменную. Я исправил его, и все отлично работает для category.php, но теперь я хочу вызвать ту же функцию в single.php моей wp-темы, но теперь у меня такая же проблема, как и в первый раз с category.php, что функция не начинайте правильно вычислять с помощью настраиваемых полей (ACF). Результат всегда 1

function averageit($posts){ global $post; $total = 0; $count = 0; foreach($posts as $post) { if(get_field('weight')) { $total += get_field('weight'); $count++; } } $Average = $total / $count; return $Average; 

Большое вам спасибо за вашу помощь заранее и приятные выходные.

ОБНОВИТЬ

Нашел решение для single.php, и это было совершенно иначе, чем одно выше … вот оно:

 $total = 0; query_posts('category_name=' . get_option('featured-cat')); while (have_posts()) : the_post(); $total += get_post_meta($post->ID, 'weight', true); endwhile; echo '<p>'.$total.'</p>'; 

Отделив пост-счет в другой функции, было достаточно возможностей найти в сети. Спасибо за поддержку!