featured()->toPages()->first(); $mapArticle = function($article) { return [ 'title' => $article->title()->value(), 'slug' => $article->slug(), 'date' => $article->date()->toDate('d/m/Y'), 'intro' => $article->intro()->excerpt(200), 'cover' => $article->cover()->toFile()?->url(), ]; }; $articles = $page->children()->listed()->sortBy('date', 'desc'); $specificData = [ 'intro' => $page->intro()->value(), 'featured' => $featured ? $mapArticle($featured) : null, 'articles' => ($featured ? $articles->not($featured) : $articles) ->map($mapArticle) ->values(), ]; $pageData = array_merge($genericData, $specificData); header('Content-Type: application/json'); echo json_encode($pageData);