Tema Kurallarına Göre
İyileştirme Planı
Bu rapor, Tema Sistemi Analiz dökümanındaki kurallara göre mahmutoglu.tuufi.com sitesinin eksik ve iyileştirme gerektiren noktalarını tespit eder.
Tenant Bilgisi
- Tenant ID: 6
- Tema: t-6
- Domain: mahmutoglu.tuufi.com
- Veritabanı: tenant_mahmutogluhukuk_*
📝 Basit Anlatım (Herkes İçin)
Teknik terimler olmadan, ne yapılacağının özeti
🎯 Ne Yapılacak?
Acil Düzeltilmesi Gerekenler
- • Zıplayan Kartlar: Hizmet kartları üzerine gelince "zıplıyor" - bu yasak, sadece renk değişmeli
- • Sayfa Tasarımları: Hakkımızda ve İletişim sayfaları şablonda kodlanmış, veritabanından gelmeli
- • Üst Bar Eksik: Telefon ve email'in göründüğü küçük üst bar yok
- • Görseller Eksik: Hizmet sayfaları için özel görseller (Leonardo AI ile) oluşturulmalı
İyileştirilmesi Gerekenler
- • İkon Efekti: Menüdeki ikonlar hover'da değişmiyor
- • WhatsApp Butonu: Footer'da ve sabit bir yerde WhatsApp butonu yok
- • Sosyal Medya: Footer'da sosyal medya linkleri eksik
- • İletişim Formu: Form gönderimi çalışmıyor (sadece görsel)
✅ Zaten Doğru Yapılanlar
- ✓ Mobil uyumluluk (responsive)
- ✓ Karanlık/Aydınlık mod geçişi
- ✓ Sayfa açılış animasyonları
- ✓ Hızlı sayfa yükleme (PWA)
- ✓ Yapışkan menü (sticky header)
- ✓ Mobil menü (hamburger)
- ✓ Animasyonlu gradient yazılar
- ✓ FOUC önleme (titreme yok)
📊 Neden Önemli?
Bu iyileştirmeler yapıldığında site:
- • Daha profesyonel görünecek (zıplayan kartlar dikkat dağıtır)
- • Daha kolay güncellenebilir olacak (tasarımlar veritabanından gelince admin panelden değiştirilebilir)
- • Daha fazla müşteri çekecek (WhatsApp butonu = anında iletişim)
- • Diğer sitelerle tutarlı olacak (tema kurallarına uyum)
🔧 Teknik Detaylar (Geliştiriciler İçin)
Dosya yolları, kod değişiklikleri ve uygulama adımları
Kritik Eksikler (7 Madde)
Hover Animasyon Yasağı İhlali
Kural: scale(), translateY() ve zıplama animasyonları YASAK!
📁 Dosya: resources/views/themes/t-6/layouts/app.blade.php:177-180
/* ❌ YANLIŞ - Mevcut Kod */
.service-card:hover {
border-color: #f59e0b;
transform: translateY(-4px); /* YASAK! */
}
✅ Olması Gereken:
/* ✅ DOĞRU - Sadece renk/shadow değişimi */
.service-card:hover {
border-color: #f59e0b;
box-shadow: 0 10px 40px -10px rgba(245, 158, 11, 0.3);
}
Ayrıca: service/index.blade.php:85 satırında group-hover:scale-105 var - bu da kaldırılmalı!
DB Body Prensibi İhlali (Hardcode If/Else)
Kural: Sayfa ve hizmet içeriklerinde hardcode if/else blokları YASAK! Tüm tasarımlar pages.body veya services.body JSON alanından gelmeli.
📁 Dosya: resources/views/themes/t-6/page/show.blade.php:82-395
/* ❌ YANLIŞ - Mevcut Kod */
@if($page->slug === 'hakkimizda')
{{-- 74 satır hardcode HTML --}}
@elseif($page->slug === 'iletisim')
{{-- 152 satır hardcode HTML --}}
@else
{{-- Generic page --}}
@endif
✅ Olması Gereken:
- • "Hakkımızda" ve "İletişim" sayfalarının HTML tasarımları admin panelden
pages.bodyalanına girilmeli - •
page/show.blade.phpsadece{!! $page->body !!}ile içerik göstermeli - • Özel section'lar (değerler, iletişim kartları) veritabanından JSON olarak gelmeli
Top Bar Eksik
Kural: Header yapısında "Top bar, sticky main header, mobile hamburger menu" olmalı.
📁 Dosya: resources/views/themes/t-6/layouts/header.blade.php
❌ Top bar bölümü YOK - direkt main header başlıyor
✅ Eklenmesi Gereken Top Bar:
<!-- Top Bar -->
<div class="hidden lg:block bg-slate-900 dark:bg-slate-950 border-b border-amber-500/10">
<div class="container mx-auto px-6 py-2">
<div class="flex items-center justify-between text-sm">
<div class="flex items-center gap-6">
<a href="tel:..." class="text-slate-400 hover:text-amber-400">
<i class="fat fa-phone mr-2"></i>+90 212 XXX XX XX
</a>
<a href="mailto:..." class="text-slate-400 hover:text-amber-400">
<i class="fat fa-envelope mr-2"></i>info@mahmutoglu.av.tr
</a>
</div>
<div class="flex items-center gap-4">
<!-- Sosyal Medya İkonları -->
</div>
</div>
</div>
</div>
Leonardo AI Görseller Eksik
Kural: Site rengi (amber/gold) kıyafet, ekipman ve aksanlara ZORUNLU entegre edilmeli!
📁 Klasör: storage/app/public/themes/t-6/
❌ Klasör YOK - Görseller oluşturulmamış
🎨 Oluşturulması Gereken Görseller:
| Dosya | Boyut | Açıklama |
|---|---|---|
| hero-bg.jpg | 1472×832 | Ana sayfa hero arka plan |
| hero-lawyer.jpg | 1024×1024 | Avukat portre/ofis |
| hakkimizda-hero.jpg | 1472×832 | Hakkımızda sayfa görseli |
| service-*.jpg (8 adet) | 1024×1024 | Her hizmet için ayrı görsel |
Prompt İpucu: "Professional law office, golden/amber accent lighting, art deco style, warm tones, legal books, scales of justice with gold details"
Settings Fallback Kullanımı
Kural: setting('key') fallback YASAK. Tüm ayarlar DB'ye eklenmeli.
📁 Örnekler (birçok dosyada):
/* ❌ YANLIŞ */
$siteName = setting('site_title') ?: setting('site_company_name') ?: 'Mahmutoglu';
$siteEmail = setting('contact_email_1') ?: setting('site_email');
✅ Yapılması Gereken:
- 1. Admin panelden tüm settings değerleri doldurulmalı
- 2. Fallback'ler kaldırılmalı:
$siteName = setting('site_title'); - 3. Boş değer kontrolü blade'de yapılmalı:
@if($siteName)
Icon Hover Megamenu'de Çalışmıyor
Kural: fal (light) → fas (solid) animasyonlu geçiş, CARD üzerinde tetiklenmeli!
📁 Dosya: header.blade.php:115
<!-- ❌ Megamenu'deki ikonlar hover'da değişmiyor -->
<i class="fat {{ $icon }} text-lg text-amber-700"></i>
✅ Olması Gereken:
<i class="fat {{ $icon }} icon-hover text-lg text-amber-700"></i>
// + app.blade.php'deki JS'e megamenu item'ları da eklenmeli
WhatsApp Float Button Eksik
WhatsApp iletişim butonu sitede sabit olarak görünmeli (sağ alt köşe).
✅ Eklenmesi Gereken (app.blade.php veya footer.blade.php):
@if(setting('contact_whatsapp_1'))
<a href="{{ whatsapp_link() }}" target="_blank"
class="fixed bottom-6 right-6 z-50 w-14 h-14 bg-green-500 hover:bg-green-600
rounded-full flex items-center justify-center shadow-lg
hover:shadow-xl transition-all group">
<i class="fab fa-whatsapp text-white text-2xl
group-hover:scale-110 transition-transform"></i>
</a>
@endif
Orta Öncelikli (5 Madde)
Footer Sosyal Medya Linkleri Eksik
📁 resources/views/themes/t-6/layouts/footer.blade.php
Footer'da LinkedIn, Instagram, Twitter vb. sosyal medya ikonları eklenmeli.
İletişim Formu Çalışmıyor
📁 page/show.blade.php:281-333
Form action="#" ile tanımlı - backend entegrasyonu veya Livewire component gerekli.
Türkçe Karakter Hataları
📁 config.json:4-5
"title": "Mahmutoglu Hukuk Art Deco Tema" ❌ → "Mahmutoğlu Hukuk Art Deco Tema"
"description": "...Danismanlik..." ❌ → "...Danışmanlık..."
Footer Credit Link
✅ Footer'da "Türk Bilişim" linki var - Doğru
❌ "Claude AI" veya "Yapay Zeka" ifadesi YOK - Doğru
İletişim Sayfasında Harita Eksik
İletişim sayfasında Google Maps embed veya Leaflet harita eklenmeli.
Doğru Yapılanlar (8 Madde)
Responsive Container
1280px altında %100 genişlik + dinamik padding ✓
FOUC Prevention
Dark mode flickering önlendi ✓
Dark Mode
Alpine.js + localStorage ile state yönetimi ✓
Animated Gradient Text
3 renk, 6 saniye animasyon ✓
PWA + instant.page
Manifest, service worker, lazy loading ✓
Sticky Header
Fixed + backdrop-blur ✓
Mobile Hamburger Menu
Alpine.js ile slide-in panel ✓
Icon Hover (Kartlarda)
fal → fas geçişi service-card'larda çalışıyor ✓
📋 Uygulama Planı (TODO)
Sıralı yapılacaklar listesi
| # | Görev | Dosya | Öncelik | Durum |
|---|---|---|---|---|
| 1 | translateY hover kaldır | app.blade.php:177-180 | Kritik | |
| 2 | scale-105 hover kaldır | service/index.blade.php:85 | Kritik | |
| 3 | Top Bar ekle | header.blade.php | Kritik | |
| 4 | WhatsApp float button ekle | app.blade.php / footer | Kritik | |
| 5 | Megamenu icon hover ekle | header.blade.php, app.blade.php | Kritik | |
| 6 | Settings fallback temizle | Tüm blade dosyaları | Kritik | |
| 7 | Türkçe karakter düzelt | config.json | Orta | |
| 8 | Footer sosyal medya ekle | footer.blade.php | Orta | |
| 9 | page/show.blade.php if/else kaldır | page/show.blade.php | Kritik | |
| 10 | Hakkımızda/İletişim DB body hazırla | Admin Panel (pages.body) | Kritik | |
| 11 | Leonardo AI görseller oluştur | storage/themes/t-6/ | Kritik | |
| 12 | İletişim formu backend | ContactForm Livewire | Orta |
Onay Bekliyor
Bu plan onaylandığında yukarıdaki TODO listesindeki maddeler sırasıyla uygulanacak. Hangi maddelerin yapılmasını istiyorsunuz?