$post
у вас по-идее уже должен быть нужный объект. Также я ACF в основном использую вместе с Timber, там несколько по-другому всё это выглядит, но как я понимаю вам необходимо передавать $post
вторым аргументом в get_field()
чтобы всё работало. public function calculate(Box $box, ...$args): float
{
$color = array_shift($args);
return array_reduce(array_filter($box->getFigures(), static function (IFigure $figure) use ($color) {
return $figure instanceof IShape && $figure->getFillColor() === $color;
}), static function (float $area, IArea $figure) {
return $area + $figure->getArea();
}, 0);
}
У вас ведь в тексте ошибки белым по красному написано сохранение в asaf_amenties, ни один из приведённых вами кусков кода не содержит упоминание этой таблицы.
Телепаты в отпуске :)