diff --git a/app/Http/Controllers/BlogController.php b/app/Http/Controllers/BlogController.php index 6bc1218..d0cdee8 100644 --- a/app/Http/Controllers/BlogController.php +++ b/app/Http/Controllers/BlogController.php @@ -8,6 +8,7 @@ use App\Models\BlogComment; use App\Models\HeaderTemplate; use App\Models\FooterTemplate; use App\Services\TemplateService; +use App\Models\Page; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; @@ -44,31 +45,62 @@ class BlogController extends Controller ? $query->latest('published_at')->paginate(12) : collect(); - // Render Header Template - En son aktif olan header template'i kullan + // Blog sayfa ayarlarını bul (varsa) + $blogPage = Page::where('slug', 'blog')->first(); + + // Render Header Template $renderedHeader = null; - $headerTemplate = HeaderTemplate::where('is_active', true) - ->latest('updated_at') - ->first(); + $headerTemplate = null; + + // 1. Öncelik: Blog sayfasında seçili header template + if ($blogPage && $blogPage->header_template_id) { + $headerTemplate = HeaderTemplate::find($blogPage->header_template_id); + } + + // 2. Öncelik: Varsayılan aktif template + if (!$headerTemplate) { + $headerTemplate = HeaderTemplate::where('is_active', true) + ->latest('updated_at') + ->first(); + } if ($headerTemplate) { $templateDefaults = $headerTemplate->default_data ?? []; + $pageData = $blogPage ? ($blogPage->header_data ?? []) : []; + $mergedData = array_merge($templateDefaults, $pageData); + $renderedHeader = TemplateService::replacePlaceholders( $headerTemplate->html_content, - $templateDefaults + $mergedData, + $blogPage ); } - // Render Footer Template - En son aktif olan footer template'i kullan + // Render Footer Template $renderedFooter = null; - $footerTemplate = FooterTemplate::where('is_active', true) - ->latest('updated_at') - ->first(); + $footerTemplate = null; + + // 1. Öncelik: Blog sayfasında seçili footer template + if ($blogPage && $blogPage->footer_template_id) { + $footerTemplate = FooterTemplate::find($blogPage->footer_template_id); + } + + // 2. Öncelik: Varsayılan aktif template + if (!$footerTemplate) { + $footerTemplate = FooterTemplate::where('is_active', true) + ->latest('updated_at') + ->first(); + } if ($footerTemplate) { $templateDefaults = $footerTemplate->default_data ?? []; + $pageData = $blogPage ? ($blogPage->footer_data ?? []) : []; + $mergedData = array_merge($templateDefaults, $pageData); + $renderedFooter = TemplateService::replacePlaceholders( $footerTemplate->html_content, - $templateDefaults + $mergedData, + $blogPage ); } diff --git a/resources/views/blog/index.blade.php b/resources/views/blog/index.blade.php index e14832f..b69a40a 100644 --- a/resources/views/blog/index.blade.php +++ b/resources/views/blog/index.blade.php @@ -1,3 +1,4 @@ + @extends('layouts.site') @section('content') diff --git a/resources/views/templates/iletisim.blade.php b/resources/views/templates/iletisim.blade.php index a33879e..86679c2 100644 --- a/resources/views/templates/iletisim.blade.php +++ b/resources/views/templates/iletisim.blade.php @@ -1,3 +1,4 @@ + @extends('layouts.site') @section('title', 'Anasayfa') @@ -5,7 +6,7 @@ @section('content')
-
+
diff --git a/routes/web.php b/routes/web.php index f90a424..a4bcaab 100644 --- a/routes/web.php +++ b/routes/web.php @@ -7,6 +7,10 @@ use App\Http\Controllers\TemplatePreviewController; use App\Models\Page; // Debug Route - Veritabanı kontrolü +Route::redirect('/index', '/', 301); +Route::redirect('/index.php', '/', 301); +Route::redirect('/index.html', '/', 301); + Route::get('/debug-homepage', function () { $page = Page::with(['headerTemplate', 'footerTemplate']) ->where('is_homepage', true)