From 8857a91406e0da8914b5fff83d8e96dc99422fb7 Mon Sep 17 00:00:00 2001 From: Ruben Date: Sat, 29 Nov 2025 01:45:41 +0100 Subject: [PATCH] Add language prefix to content URLs and use folder names for assets Use language prefix for all content URLs and ensure assets reference folder names instead of translated slugs for proper file access --- app/router.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/app/router.php b/app/router.php index 9f75dc9..d5345b2 100644 --- a/app/router.php +++ b/app/router.php @@ -139,15 +139,19 @@ switch ($parsedPath['type']) { // Use slug if available $urlSlug = ($metadata && isset($metadata['slug'])) ? $metadata['slug'] : $item; - $baseUrl = '/' . trim($ctx->requestPath, '/') . '/' . urlencode($urlSlug); + $langPrefix = $ctx->get('langPrefix', ''); + $baseUrl = $langPrefix . '/' . trim($ctx->requestPath, '/') . '/' . urlencode($urlSlug); + + // Assets (cover, PDF) must use actual folder name, not translated slug + $assetUrl = $langPrefix . '/' . trim($ctx->requestPath, '/') . '/' . urlencode($item); return [ 'title' => $title, 'url' => $baseUrl . '/', 'date' => $date, 'summary' => $metadata['summary'] ?? null, - 'cover' => $coverImage ? "$baseUrl/$coverImage" : null, - 'pdf' => $pdfFile ? "$baseUrl/$pdfFile" : null, + 'cover' => $coverImage ? "$assetUrl/$coverImage" : null, + 'pdf' => $pdfFile ? "$assetUrl/$pdfFile" : null, 'redirect' => $metadata['redirect'] ?? null ]; }, $subdirs));