Я работаю над виджетом WordPress, чтобы вывести таблицу для определенного типа поста (Projects) с обязательными полями типа 2.Полученные данные "местоположение" и "сила".Я хочу добавить функцию, которая суммирует все переменные «power», которые отформатированы в виде чисел, если «местоположение» уже создано.
Например, если создаются 3 различных сообщения Projects:
"location"=> Winnipeg, MB "power"=>2,
"location"=> Winnipeg, MB "power"=>5,
"location"=> Saskatchewan, AB "power"=>2
Тогда я хочу, чтобы вывод был:
"location"=> Winnipeg, MB "power"=>7,
"location"=> Saskatchewan, AB "power"=>2
Мой код:
<?php
$all_locations=array();
$all_projects=array();
while ( $the_query->have_posts() ):
$the_query->the_post();
global $post;
$id = $post->ID;
$project_location = get_field('location');
$single_kilowatts = get_field('kilowatts');
$single_location = $project_location['address'];
array_push($all_locations, $single_location);
$project_entry=array(
$single_location,
$single_kilowatts
);
$project_entry = compact('single_location','single_power');
array_push($all_projects, $project_entry);
endwhile;
$unique = array_unique($all_locations);
print_r($unique);
print_r($all_projects);
?>
Пока этовсе работает, и 2 последние строки будут напечатаны:
Array ( [0] => Winnipeg, MB [1] => Saskatchewan, AB)
Array ( [0] => Array ( [single_location] => Winnipeg, MB [total_kW] => 2 )
[1] => Array ( [single_location] => Winnipeg, MB [total_kW] => 5 )
[2] => Array ( [single_location] => Saskatchewan, AB [total_kW] => 2 ) )
После этого я полностью потерялся и не знаю, как выводить данные так, как я упоминал в начале.Должен ли я начать новый цикл while или использовать foreach?Как я могу наиболее эффективно структурировать свое заявление if?
Если у вас есть какие-либо ответы или советы по моему синтаксису, пожалуйста, дайте мне знать.Я младший разработчик, с небольшим пониманием php и очень рад услышать любые советы или хитрости.