35 lines
975 B
PHP
35 lines
975 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
$specificData = [
|
||
|
|
'intro' => [
|
||
|
|
'title' => $page->intro_title()->value(),
|
||
|
|
'text' => $page->intro_text()->value()
|
||
|
|
],
|
||
|
|
'mission' => [
|
||
|
|
'title' => $page->mission_title()->value(),
|
||
|
|
'text' => $page->mission_text()->toBlocks()
|
||
|
|
],
|
||
|
|
'manifesto' => [
|
||
|
|
'title' => $page->manifesto_title()->value(),
|
||
|
|
'text' => $page->manifesto_text()->toBlocks()
|
||
|
|
],
|
||
|
|
'team' => [
|
||
|
|
'title' => $page->team_title()->value(),
|
||
|
|
'members' => $page->team_members()->toStructure()->map(function($member) {
|
||
|
|
return [
|
||
|
|
'name' => $member->name()->value(),
|
||
|
|
'role' => $member->role()->value(),
|
||
|
|
'bio' => $member->bio()->value(),
|
||
|
|
'photo' => $member->photo()->toFile()?->url(),
|
||
|
|
'linkedin' => $member->linkedin()->value(),
|
||
|
|
'twitter' => $member->twitter()->value()
|
||
|
|
];
|
||
|
|
})->values()
|
||
|
|
]
|
||
|
|
];
|
||
|
|
|
||
|
|
$pageData = array_merge($genericData, $specificData);
|
||
|
|
|
||
|
|
header('Content-Type: application/json');
|
||
|
|
echo json_encode($pageData);
|