🎯 Sistemin Amacı
PHP/MySQL tabanlı, WordPress'e alternatif olarak sıfırdan özel yazılmış bir haber/içerik yönetim sistemi (CMS). Amaç; haber siteleri için gereken tüm temel ve gelişmiş özellikleri, üçüncü parti bir platforma bağımlı kalmadan, tamamen özelleştirilebilir ve hafif bir altyapıda sunmak.

🏗️ Teknik Altyapı
- PHP + PDO/MySQL (cPanel/paylaşımlı hosting uyumlu)
- Vanilla JavaScript (framework bağımlılığı yok — hızlı yüklenir)
- Mobil öncelikli (mobile-first) responsive tasarım
- Karanlık/Aydınlık tema desteği (otomatik sistem tercihi algılama + manuel değiştirme)
- SEO odaklı yapı (Schema.org, Open Graph, Twitter Card, sitemap, RSS, Google News beslemesi)
- Pretty URL sistemi (.htaccess ile /kategori/ekonomi, /haber-basligi gibi temiz adresler)
📰 İçerik Yönetimi
- Zengin metin editörü (WordPress tarzı): kalın/italik/başlık/liste/alıntı, bilgisayardan veya URL'den resim ekleme, sürükle-bırak resim yükleme, panodan (Ctrl+V) resim yapıştırma, medya kütüphanesi (önceden yüklenmiş görselleri tekrar kullanma)
- YouTube/Vimeo/MP4 video gömme — tıkla-oynat sistemi (sayfa yüklenirken video player'ı yüklenmez, performansı korur)
- Çoklu kategori desteği — bir haber birden fazla kategori sayfasında listelenebilir
- Sınırsız derinlikte alt kategori yapısı (ana kategori → alt kategori → alt-alt kategori)
- Etiket (tag) sistemi
- Haber tipleri: standart haber, foto galeri, video haber, canlı blog, köşe yazısı
- Öne çıkan / Manşet / Son Dakika işaretleme
- Taslak → Onay Bekliyor → Yayında → Arşiv iş akışı (editoryal onay süreci)
- Otomatik slug (URL) üretimi ve çakışma kontrolü
- Kapak görseli otomatik WebP dönüşümü + 1200px'e ölçekleme (dosya boyutu optimizasyonu)
- SEO meta başlık/açıklama, kaynak gösterme (AA, Reuters vb.)
- AI ile içerik özgünleştirme (opsiyonel) — OpenAI/Claude API ile haberi yeniden yazma + otomatik SSS (FAQ) üretme
👥 Kullanıcı & Rol Sistemi
- 5 kademeli rol: okuyucu → yazar → muhabir → editör → admin
- Yazarlar kendi haberlerini yazıp onaya gönderir, muhabirler direkt onay kuyruğuna düşer, editörler direkt yayınlayabilir
- Üye profili: profil resmi (otomatik kare kırpma + WebP), biyografi, Twitter/X bağlantısı
- Şifre değiştirme, güvenli parola hash'leme (bcrypt)
- Admin panelinden üye rolü değiştirme, engelleme/engel kaldırma, silme
- Rate limiting (örn. saatte 5 haberden fazla gönderilemez, şifre denemesi sınırlı)
💬 Topluluk Özellikleri
- Yorum sistemi (üyeli/üyesiz yorum, admin onaylı ya da otomatik yayın seçeneği)
- İç içe yanıt (reply) desteği
- Emoji tepki sistemi (😲😊😢😠❤️😂) — IP bazlı tekrar tepki engeli
- Paylaşım butonları (X/Twitter, Facebook, WhatsApp, Telegram, link kopyala)
- RSS beslemesi ile abone olma
📢 Reklam Yönetimi
- Konum bazlı reklam sistemi: header üstü, sidebar üst/alt, haber içi (1. paragraf sonrası + ortası), haber sonu, liste arası (her 5 haberde bir), footer, mobil sabit banner
- İki reklam tipi: özel kod (AdSense/AdMatic/HTML-JS) veya görsel+link banner
- Reklam başına gösterim/tıklama sayacı ve CTR takibi
- Zamanlı yayın (başlangıç/bitiş tarihi), tek tık aktif/pasif yapma
- Aynı reklam scripti sayfada birden fazla kez tekrarlanıyorsa otomatik tekilleştirme (performans koruması)
📊 İstatistik & Analiz
- Dahili ziyaret takibi (bot trafiği ayrıştırma)
- Dashboard: toplam/bugünkü haber, bekleyen onay, üye sayısı, görüntülenme, yorum istatistikleri
- Son 7/30 gün trafik grafiği
- En üretken yazarlar, en popüler kategoriler, en çok tıklanan reklamlar
- Google Analytics entegrasyonu (opsiyonel)
🔍 SEO & Teknik Optimizasyon
- Schema.org yapılandırılmış veri (NewsArticle, WebSite, SearchAction)
- Otomatik sitemap.xml ve Google News XML beslemesi
- 301/410 yönlendirme yönetimi (eski URL'lerden yenilerine)
- IndexNow ve Google Indexing API entegrasyonu (yeni haberi anında arama motoruna bildirme)
- İç linkleme yönetimi
- Push bildirim desteği (OneSignal)
⚡ Performans Optimizasyonları
- Gzip sıkıştırma, tarayıcı önbellekleme (.htaccess)
- CSS/JS için otomatik cache-busting (dosya değişince versiyon numarası otomatik güncellenir)
- Kapak görselleri otomatik WebP + boyut optimizasyonu
- loading="lazy" ile geç yükleme, ilk görünür resimde fetchpriority="high"
- Font yüklemesinin sayfa render'ını geciktirmemesi için gecikmeli (deferred) font yükleme
- Sonsuz kaydırma (infinite scroll) + "Daha Fazla Yükle" butonu
📱 Mobil Deneyim
- Dokunmatik kaydırmalı manşet slider'ı
- Mobil sabit üst/alt reklam bantları
- Hamburger menü, açılır kategori alt menüleri
- Mobilde giriş/üye butonlarının footer'a taşınması (header sıkışmasını önlemek için)
🎛️ Admin Panel Modülleri
Dashboard · Haber Ekle/Düzenle · Tüm Haberler · Sayfalar (statik sayfa yönetimi) · Kategoriler · Etiketler · Yorumlar · Üyeler · Bot Yönetimi (Ayperi/Toprak) · Yönlendirmeler · İç Linkleme · İstatistikler · Site Ayarları · Reklam · Favicon Üretimi
🎯 Hangi Tarz Sitelere Uygun?
- Yerel/bölgesel haber siteleri (bir şehir, ilçe, bölge odaklı haber portalları)
- Ulusal genel haber siteleri (ekonomi, spor, gündem, teknoloji gibi çok kategorili yapılar)
- Niş konu siteleri (spor haberleri, teknoloji haberleri, magazin gibi tek temaya odaklı portallar)
- Kurumsal/medya grubu siteleri (senin durumunda olduğu gibi, radyo/chat platformlarıyla birlikte çalışan bir medya grubunun haber ayağı)
- Çok yazarlı/muhabirli yapılar (birden fazla kişinin içerik ürettiği, editoryal onay gerektiren ekipler)
- Reklam geliri hedefleyen siteler (AdSense/AdMatic gibi ağlarla çalışan, çoklu reklam alanı gerektiren yapılar)
- SEO/Google Discover odaklı içerik üreticileri (organik trafiği önemseyen, hızlı sayfa yüklemesi ve yapılandırılmış veri gerektiren projeler)
Uygun olmadığı durumlar: E-ticaret, forum, çok büyük ölçekli (günde milyonlarca ziyaretçi) kurumsal medya siteleri (bu ölçekte WordPress/özel altyapı yerine daha kapsamlı bir mimari — CDN, ayrık veritabanı, mikroservisler — gerekir), ya da kod düzenlemesi yapamayacak teknik bilgisi olmayan kullanıcılar için (bu sistem WordPress gibi tık-tık kurulum sihirbazına sahip değil, dosya bazlı özelleştirme gerektiriyor).
