32 lines
1 KiB
PHP
32 lines
1 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
$specificData = [
|
||
|
|
'tagline' => $page->tagline()->value(),
|
||
|
|
'description' => $page->description()->kt(),
|
||
|
|
'cover' => $page->cover()->toFile()?->url(),
|
||
|
|
'gallery' => $page->files()->filterBy('template', 'image')->map(function($img) {
|
||
|
|
return $img->url();
|
||
|
|
})->values(),
|
||
|
|
'impact' => $page->impact()->split(','),
|
||
|
|
'category' => $page->category()->value(),
|
||
|
|
'platforms' => $page->platforms()->split(','),
|
||
|
|
'client_name' => $page->client_name()->value(),
|
||
|
|
'apple_link' => $page->apple_link()->value(),
|
||
|
|
'android_link' => $page->android_link()->value(),
|
||
|
|
'web_link' => $page->web_link()->value(),
|
||
|
|
'prev' => $page->prev() ? [
|
||
|
|
'title' => $page->prev()->title()->value(),
|
||
|
|
'url' => $page->prev()->url()
|
||
|
|
] : null,
|
||
|
|
'next' => $page->next() ? [
|
||
|
|
'title' => $page->next()->title()->value(),
|
||
|
|
'url' => $page->next()->url()
|
||
|
|
] : null,
|
||
|
|
'parent_url' => $page->parent()->url()
|
||
|
|
];
|
||
|
|
|
||
|
|
$pageData = array_merge($genericData, $specificData);
|
||
|
|
|
||
|
|
header('Content-Type: application/json');
|
||
|
|
echo json_encode($pageData);
|