Yeni bir Türk yapımı Web Scripti projesi ile karşınızdayım. Sparkle adını verdiğim bir blog scripti projem var. Bu projemde, WordPress'e nazaran daha fazla özellik içerecek. Hatta bir kaçını sizlere anlatacağım şimdi.
Günümüzde Bloglar (Haber siteleri, Dergiler vs... dahil), İnternet'teki en önemli bilgi kaynağıdırlar. Bloglar sayesinde yazı yazarız, ziyaretçiler yorum yapar, yardım ister vs... vs...
Bende insanlara kolaylık sağlamak amacıyla, Sparkle adını verdiğim bir blog scripti projesi başlattım. Aklımda planladığım özellikleri, şu anda WordPress'te dahi yok. Fakat bu demek değildir ki bir anda zirveye oturalım. :)
Elbette amacımız en yükseğe, en tepeye çıkmak olacak ama sizlerin desteklerinizle bu işe yavaş yavaş adım atacağım.
Sparkle'ın Yapısı
- Ağaçlandırma Sistemli Dinamik Yapı
- Özel Dinamik Dosya Sistemi (KGD Sistemi)
- OOP Tabanlı
- Bağımlı Şablon Sistemi (KGD'ye göre kaynak taraflı dağıtımlı şablon sistemi)
Sparkle'ın Diğer Sistemlerden Bazı Avantajları Neler Olacak?
Aslında aklımda bir çok fikir var fakat bir kaç düşündüğüm özelliğini anlatmak istiyorum.
Modül Sistemi
Sistemde ekstra yük oluşturmamak maksadıyla, sistemin yükünü hafifletmek ve sunucuya kazandırmak için, Sistem özellikleri parçalara ayrılmıştır. Mesela Üyelik Sistemi ayrı bir modül, sayfa sistemi ayrı bir modül, portfolyo sistemi ayrı bir modül vs... vs... Gibi. Kulalnıcılar modüller istediği zaman kaldırabilecek. Fakat yüklemek istediği zaman ana sunucudan dosyasını indirecek.
Kütüphaneli Eklenti Sistemi
Eklentiler, Sistem fonksiyonlarını kullanamaz. O yüzden eklentilere özel fonksiyonları barındıran kütüphaneler vardır. Eklentiler, kütüphaneler vasıtasıyla işlem yapabilirler.
Yazılarda Değişken Sistemi
Hayatımızdaki pek çok şey zaman geçtikçe yenilenir. Değişir. Ve bazen yazılarımızda bunlardan bahsettiğimizde, bahsettiğimiz şey değişince o yazıdaki metni de değiştirmemiz gerekebilir. Hatta sadece tek bir yazıda değil bir çok yazıyı da değiştirmemiz gerekebilir.
Yazılarda kullanılacak bir değişken atayabiliyoruz. Atıyorum LATEST_WINDOWS adında bir değişken oluşturdum ve bir çok yazımda, "Günümüzdeki en güncel Windows sürümü LATEST_WINDOWS 'dur." dersem. LATEST_WINDOWS değişkenine de "Windows 8" değerini atarsam, bu değişkeni içeren tüm yazılarda Windows 8 diye geçecek. Sonradan Windows 10 diye değiştirirsem, tüm yazılarda da otomatikman değişecek.
Bu sayede, bir çok yazıdaki metni elle değiştirmek yerine değişkenler sayesinde kısa yoldan hepsini değiştirebilirsiniz.
Bir örnek daha vereyim.
Atıyorum Ali Faysal diye bir adam var. (Adamın ismini uydurdum örnek bu.) Ve ALI_FAYSAL adlı değişkenime atadım bir yazı da da "Bunun mucidi ALI_FAYSAL dır" diye belirttim. Adam bir süre sonra öldü. Değişkenime de Rahmetli Ali Faysal yazdım. Bu sayede de Ali Faysal ismi geçen tüm yazılarda Rahmetli Ali Faysal olarak geçecek.
İmla/Küfür/Spam Filtresi
Bu opsiyonel bir modül olarak devreye sokulabilecek bir özelliktir. Siteye gönderilen tüm yorumlar sistem tarafından taranacak ve yazım yanlışları, küfürler otomatikman düzenlenip yönetici onayına sulunacak ve yöneticiye şu küfürler içeriyordu düzeltildi diye mesaj da belirtilecek. Eğer mesaj spamsa komple silinebilir bile yöneticiye haber verilip.
Yaş Filtresi
Bu filtre, yazılarda ve yorumlarda kullanılabilir. Çocuklar için uygunsuz olabilecek, sokak ağzıyla veya argo konuşmalar okuyucuya gösterilmeyecek. Kibar ve nazik şekilde göndeirlen yorumlar gösterilecek; "Çok güzel olmuş :)", "Harika!" gibi... Ayrıca yazılarda uygun olup olmadığıda opsiyonel olarak yönetici tarafından ya da sistem tarafından belirlenebilecek.
Üyelik Sistemi
Bu da opsiyonel olan modüllerden biri. Siteye kayıt olan her üyenin profili ve istatistikleri olacak. Yönetici onayına bağlı olaraktan da onaylı içerik ekleyebilecek. Yorumları, eğer güvenilir kulalnıcı olarka bleirtilmişse otomatikman onaylanacak, filtreden geçirilip.
Kodlamaya bizzat başladım, ve gerçekten çok güzel gidiyor. Eğer projede benimle birlikte olmak isteyen varsa ve PHP bilgisi gerçekten profesyonel düzeydeyse lütfen Ö.M. ile benimle iletişime geçsin.
Daha farklı fikirlerim de var.
Şimdilik önerilerinizi ve görüşlerinizi bekliyorum. :)