Basit bir blog sitesi nasıl PHP OOP ile yazılır? Bu makalede adım adım ilerleyerek anlatıyoruz Kendinize özgü bir blog sitesi oluşturmak için bizi takip edin

Blog yazmak, kendinizi ifade etmek, başkalarıyla paylaşmak ve belki de bir takipçi kitlesi oluşturmak için harika bir yol. Ancak, bir blog sitesi oluşturmak, işin biraz daha teknik kısmıdır. Bu nedenle, bu makalede PHP OOP kullanarak nasıl basit bir blog sitesi oluşturulabileceği ele alınacaktır.
Öncelikle, PHP OOP nedir? PHP OOP, nesne yönelimli programlama terimidir. Bu programlama biçiminin temelinde, nesnelere dayalı programlama, sınıf, kalıtım, kapsülleme ve çok biçimlilik gibi olgular yer almaktadır. Bu nedenle, OOP temellerine ilişkin açıklamalar verilecek.
Bir blog sitesi oluştururken dikkat edilmesi gereken en önemli noktalardan biri, veritabanı tasarımıdır. Bu bölümde, kullanıcılar tablosu ve gönderiler tablosu gibi oluşturulması gereken birçok tablo yer almaktadır. Kullanıcılar tablosunda, kullanıcı adı, e-posta adresi ve şifre gibi kullanıcı bilgileri depolanabilir. Oturum açma ve kayıt olma işlemleri de burada ele alınacak. Ayrıca, kullanıcıların blog sitesinde yayınladığı gönderilerin depolanması için bir tablo tasarlanması ve oluşturulması gerekecektir. Bu gönderilerin kategorilere ve etiketlere ayrılması, siteye yapılan aramaları kolaylaştıracaktır.
Blog sayfası tasarımı da bir o kadar önemlidir. Blog sayfası tasarımı ve gönderilerin nasıl gösterileceği, şablonun nasıl oluşturulacağı, gönderi görüntüleme sayfası ve yorumlar gibi birçok konuda bilgiler verilecektir. Son olarak, yönetici paneli tasarımı ve kullanımı hakkında bilgiler verilecektir. Bu bölümde, giriş sayfası ve gönderi ekleme sayfası gibi konular ele alınacaktır.
Genel olarak, bu makalede PHP OOP kullanarak basit bir blog sitesi nasıl oluşturulacağına dair temel adımlar anlatılmaktadır. Bu adımlar, daha büyük ve daha karmaşık bir site oluştururken de kullanılabilir. Yapmanız gereken tek şey, bu adımları dikkatle takip etmek ve kendi sitenizi oluşturmaktır.
PHP OOP Nedir?
PHP OOP kısaltması, nesne yönelimli programlama anlamına gelir. Bu tür programlama, kodun tekrar kullanılabilirliği ve esnekliğini arttırır.
Nesne yönelimli programlama, bir programı daha büyük bir bütün olarak ele alınarak, birçok farklı veri türü üzerinde işlem yapmanızı sağlar. Ayrıca, kodun okunması ve düzenlenmesi daha kolay ve anlaşılabilir hale gelir. Bu özellikler sayesinde, birçok geliştirici nesne yönelimli programlamayı tercih eder.
PHP'de nesne yönelimli programlama kullanmak için temel olarak üç farklı öğe kullanılır: sınıflar, nesneler ve özellikler / yöntemler. Sınıflar, içinde bir grup fonksiyon veya yöntem içeren bir yapıdır. Nesneler, bu sınıfları örneklerken, özellikler ve yöntemler sınıf içinde tanımlanır ve ilgili örnek üzerinden kullanılır.
Temel olarak, nesne yönelimli programlama, kodu birkaç farklı katmana ayırmanıza olanak tanır. Bu sayede, her bir bölümü daha az karmaşık ve anlaşılması daha kolay hale getirerek daha iyi bir programlama deneyimi sunar.
Veritabanı Tasarımı
Veritabanı tasarımı, bir blog sitesi oluştururken dikkat edilmesi gereken en önemli noktalardan biridir. İyi bir veri tasarımı sayesinde, verilerin yönetimi ve depolanması daha kolay hale gelir. Bunun yanı sıra, site performansı da artar.
İlk adım, veritabanı tablolarının tasarlanmasıdır. Bu, sitenin ihtiyaç duyduğu verileri depolayacak olan tabloların oluşturulması anlamına gelir. Veritabanı tasarımı sürecinde dikkat edilmesi gereken bir diğer önemli konu, tablo arasındaki ilişkilerdir. Anlamlı ve etkili bir şekilde veri depolamak için, tablolar arasındaki ilişki ve bağlantıların doğru bir şekilde oluşturulması gereklidir.
Veritabanı tasarımı sürecinde, ayrıca tablolar arasındaki bağımlılıklar ve diğer kısıtlamalar da belirlenmelidir. Örneğin, kullanıcıların sadece kendi gönderilerini silebilmeleri veya düzenleyebilmeleri için, tablolar arasında bir kısıtlama eklemek gerekebilir.
Bunların yanı sıra, veritabanı tasarımı sürecinde, verilerin doğru bir şekilde depolanması için uygun veri tipi ve boyutunun seçilmesi de önemlidir. Örneğin, kullanıcı adının depolanması için VARCHAR kullanmak, sayıların depolanması için ise INT kullanmak gereklidir.
Tüm bu faktörler dikkate alındığında, etkili bir veritabanı tasarlamak için dikkatli düşünülmesi gerekmektedir. Tabloların doğru bir şekilde tasarlanması ve oluşturulması, site performansı ve verilerin etkili bir şekilde yönetimi için hayati önem taşır.
Kullanıcılar Tablosu
Bir blog sitesi oluştururken kullanıcıların kaydolması için bir tablo tasarlamak gereklidir. Bu tablo, kullanıcı adı, e-posta adresi ve şifre gibi kullanıcı bilgileri gibi önemli bilgilerin depolanması için kullanılabilir. Kullanıcılar tablosu oluşturulurken, veritabanı yönetim sistemine (DBMS) bağlı olarak SQL veri tipleri kullanılmalıdır. Kullanıcılar tablosu, birincil anahtar (primary key) kullanılarak belirli bir kullanıcıyı benzersiz bir şekilde tanımlamak için tasarlanmış olmalıdır.
Tablo oluşturulduktan sonra, verilerin nasıl eklenip, güncelleneceği ve silineceği de öğrenilmelidir. Örneğin, yeni bir kullanıcı kaydı eklemek için, INSERT INTO statement kullanılabilir. Ayrıca, UPDATE ve DELETE statement'ları, mevcut kullanıcıları güncellemek veya silmek için kullanılabilir.
Kolon | Türü | Açıklama |
---|---|---|
user_id | INT | Birincil anahtar, otomatik arttırılabilir |
username | VARCHAR(255) | Kullanıcı adı |
VARCHAR(255) | E-posta adresi | |
password | VARCHAR(255) | Kullanıcı şifresi |
Yukarıdaki tablo, bir kullanıcıların kaydedilebileceği basit bir kullanıcılar tablosuna örnek olabilir. Tablo, user_id adlı birincil anahtar ve kullanıcı adı, e-posta adresi ve şifre gibi önemli bilgileri depolayan sütunlar içerir. Verilerin güvenliği için, şifrelerin hashlenmesi ve kullanıcı yönetimi işlemlerinde güçlü giriş doğrulama mekanizmalarının kullanılması şiddetle önerilir.
Oturum Açma ve Kayıt Olma İşlemleri
Kullanıcıların blog sitesinde oturum açması ve kayıt olması, siteye erişim ve katılım için gereklidir. Oturum açma işlemi, kullanıcının kullanıcı adı ve şifresinin doğru olup olmadığını denetler ve kayıt olma işlemi, kullanıcının siteye üye olabilmesi için gereklidir.
İlk adım olarak, kullanıcıların kayıt olabilmesi için bir kayıt formu oluşturulmalıdır. Bu formda, kullanıcının adı, e-posta adresi ve şifresi gibi bilgiler istenebilir. Veritabanına kaydetmek için bir PHP scripti yazılmalıdır.
Oturum açma işlemi ise, kullanıcının giriş yaptığı sayfada gerçekleştirilir. Kullanıcı adı ve şifresi girildikten sonra, bir PHP scripti kullanılarak kimlik doğrulama gerçekleştirilir. Eğer kullanıcı bilgileri doğruysa, oturum açma işlemi gerçekleştirilir ve kullanıcının oturum bilgileri saklanır. Daha sonra kullanıcının siteye erişimi sağlanır.
Bu işlemleri gerçekleştirmek için veritabanı yapılandırması uygun şekilde ayarlanmalıdır. Kullanıcı bilgileri ve oturum bilgileri veritabanında saklanmalı ve doğru şekilde kullanılmalıdır. Oturum açma ve kayıt olma işlemleri tamamlandıktan sonra, siteye erişim ve katılım sağlamak daha kolay hale gelir.
Kullanıcıların Gönderileri
Kullanıcılar, blog sitelerinde paylaşmak istedikleri gönderileri depolayabilirler. Bunu yapmak için, bir gönderiler tablosu tasarlanmalı ve oluşturulmalıdır. Bu tablo, kullanıcıların gönderilerini depolayacak ve bu gönderilerin sayfada görüntülenmesini sağlayacak verileri içermelidir.
Gönderiler tablosunun tasarımı genellikle, gönderilerin başlığı, içeriği, tarihi, yazar bilgileri ve bir görsel gibi veriler içermesi gerekiyor. Bu verilerin her biri, tabloda sütunlar şeklinde yer alabilir.
Örneğin, gönderiler tablosunda aşağıdaki sütunlar yer alabilir:
ID | Başlık | İçerik | Tarih | Yazar | Görsel |
---|---|---|---|---|---|
1 | Lorem Ipsum Dolor Sit Amet | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla fermentum tempor metus, ac bibendum leo iaculis eu. | 12/05/2021 | John Doe | ![]() |
2 | Sed Ut Perspiciatis Unde | Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. | 13/05/2021 | Jane Smith | ![]() |
Yukarıda, gönderiler tablosu örneğini görebilirsiniz. Bu tablo, gönderilerin ID'si, başlığı, içeriği, tarihi, yazarı ve bir görseli içerir. Kullanıcılar, blog sitelerinde bu tabloya gönderiler eklediği zaman, bu veriler veritabanına kaydedilir ve sitenin blog sayfasında gösterilir.
Bu şekilde, kullanıcılar tarafından yüklenen gönderiler depolanabilir ve daha sonra sitenin arşivi haline getirilebilir. Gönderilerin tablodaki tarih bilgisi sayesinde, kullanıcılar bir gönderinin ne zaman paylaşıldığını ve sitenin ne kadar süre önce güncellendiğini görebilirler. Bu da sitenin ziyaret edilebilirliği açısından önemlidir.
Kategoriler ve Etiketler
Makalelerin kategorilere veya etiketlere ayrılması, ziyaretçilerin ilgilendikleri konuları daha rahat bulmalarına yardımcı olur. Bu sayede siteye yapılan aramalar daha kolay hale gelir. Kategoriler ve etiketler arasındaki farkların ise en belirgin özelliklerinin kategorilerin geniş kapsamlı olması, etiketlerin ise daha spesifik olmasıdır.
Öncelikle kategorilerin nasıl oluşturulacağına bakalım. Kategoriler, içerdikleri makalelerin konularına göre adlandırılmalıdır. Her kategori adı, site ziyaretçileri tarafından makalelerin içeriğini anlamak için kullanılacaktır. Bu sebeple, kategoriler iyi düşünülmelidir.
Etiketler, bir makalenin içeriğinde geçen anahtar kelimelerdir. Makaleler genellikle tek bir kategoriye ayrılır, ancak bir makale birden fazla etikete sahip olabilir. Bu sebeple, etiketler daha spesifik olmalıdır. İlgili anahtar kelimeler seçilerek, ilgili makaleye kolayca ulaşılabilir.
Bir blog sitesindeki kategoriler ve etiketler, veritabanında ayrı ayrı tablolar olarak tutulur. Kategoriler, kategori adı ve kategori URL'si alanlarını içeren bir tablodur. Etiketlerin tutulacağı tablo ise, etiket adı ve etiket URL'si alanlarını içerir. Bu tablolara, makalelerdeki kategoriler ve etiketler atananarak, ilgili makalenin kategorisi veya etiketine kolaylıkla ulaşılabilir.
Kategoriler ve etiketler, bir blog sitesi için oldukça önemlidir. Kullanıcıların ilgi alanlarına göre ayrılması, siteye yapılan aramaların daha doğru ve başarılı olmasını sağlar. Bu nedenle, kategorilere ve etiketlere verilen önemin yüksek olması gerekmektedir.
Blog Sayfası ve Gönderilerin Gösterimi
Blog sayfası, bir blog sitesindeki en önemli sayfalardan biridir. Bu sayfada, siteye eklenen gönderilerin listesi ve bunların özetleri görüntülenir. Blog sayfasının tasarımı, kullanıcıların sitede gezinirken keyifli bir deneyim yaşamasını sağlayacak şekilde oluşturulmalıdır.
Bir blog sayfası tasarlarken, dikkat edilmesi gereken birkaç önemli nokta vardır. Öncelikle, gönderilerin nasıl görüntüleneceğine karar vermek gerekir. Gönderiler, başlık, özet ve resim gibi bilgileri içeren kutucuklar halinde gösterilebilir. Ayrıca, her gönderinin altında yorumlar bölümü ve paylaşma seçenekleri de yer alabilir.
Gönderileri listelemek için, tablo veya liste gibi bir yapı kullanılabilir. Bu yapılar, gönderilerin daha düzenli ve anlaşılır bir şekilde görüntülenmesini sağlar. Ayrıca, gönderilerin tarihine göre kronolojik olarak sıralanması da önemlidir.
Bunların yanı sıra, blog sayfasının altında "Daha Fazla Gönderi" veya "Arşivi Görüntüle" gibi butonlar yer alabilir. Bu butonlar sayesinde, kullanıcılar daha fazla gönderiye erişebilir ve siteyi daha fazla keşfedebilir.
Blog sayfasının tasarımı, sitedeki diğer sayfaların tasarımıyla uyumlu olmalıdır. Renkler, fontlar ve arka plan görselleri, siteye yönelik belirli bir stil oluşturmak için birbiriyle uyumlu olmalıdır. Bu sayede, kullanıcılar sitenin tamamını gezinirken hoş bir görsel deneyim yaşayabilirler.
Temel Şablon ve Tasarım
Bir blog sitesi oluştururken, sayfa tasarımı oldukça önemlidir. Kullanıcılar okuma deneyimlerine çok önem verirler. Sayfalarınızın akıcı, etkileşimli ve kolay gezinilebilir olması gerekir. Yalnızca içerikle değil, aynı zamanda sitenizin görünümüyle de fark yaratabilirsiniz.
Sayfa tasarımında temel şablon, tasarımın ana hatlarını belirlemeniz için oldukça önemlidir. Bu şablon sayesinde, tüm sayfalarınızda ortak bir hissiyat ve görünüm sağlayabilirsiniz. Şablon oluşturmak için, HTML ve CSS dilini kullanabilirsiniz.
Bu şablonu oluştururken, sayfanın en tepesinde ana menüye yer vermek oldukça önemlidir. Bu menüye tıklanarak, farklı sayfalara doğrudan erişilebilir. Menü, kullanıcıların gezinmesini kolaylaştırır ve siteye olan ilgiyi artırır. Bununla birlikte, sayfa içeriğinin yukarıda yer alması da oldukça önemlidir. Bu şekilde kullanıcılar, sayfaya ilk girdiklerinde doğrudan içeriği görürler ve siteye olan ilgileri artar.
En altta ise, iletişim bilgileri ve sosyal medya hesaplarınızı paylaşabilirsiniz. Böylece ziyaretçilerinizle iletişim kurmanız kolaylaşır ve sosyal medya sayfalarınızın takipçi sayısı artar.
Sayfa tasarımında sade ve modern bir görünüm elde etmek istiyorsanız, minimalist bir yaklaşım benimseyebilirsiniz. Bu yaklaşımda, fazla öğelerden kaçınarak sadeliği ve bütünlüğü hedeflersiniz. Ancak unutulmamalıdır ki, tasarımın sade olması, kullanıcılara içeriğe odaklanma imkanı verirken, siteye ilgi duymalarını sağlamak için sıradışı ve yenilikçi fikirlerle de bütünleştirilmelidir.
Bir blog sitesi için tasarım oldukça önemlidir. Basit bir tasarım, kullanıcıları siteye çekmek için yeterli değildir. Ziyaretçiler, hem içerik hem de tasarım açısından ilgi çekici bir site beklerler. Bu nedenle, sitenizin tasarımı konusunda özenli olmalı ve içeriğiyle bir bütün halinde düşünmelisiniz.
Gönderi Görüntüleme Sayfası
Bir blog sitesinde en önemli öğelerden biri gönderilerdir. Kullanıcılar, bu gönderilere tıklayarak daha fazla bilgi edinirler ve yorum yapabilirler. Bu nedenle, gönderi görüntüleme sayfasının tasarımı ve işlevi çok önemlidir. Bu sayfada, tek bir gönderinin nasıl görüntüleneceği ve yorumların nasıl yapılabileceği anlatılacaktır.
Öncelikle, gönderi görüntüleme sayfası, blog sayfasından tek bir gönderiye tıklandığında açılır. Bu sayfada, gönderinin başlık, yazar, tarih ve ana içerik alanları görüntülenir. Ayrıca, gönderiye ait kategoriler ve etiketler de listelenir. Bu bilgilerin yanı sıra, kullanıcılar gönderiyi yorumlayabilirler.
Yorumlar için, bir yorum bölümü oluşturulmalıdır. Bu bölümde, kullanıcılar e-posta adreslerini, adlarını ve yorumlarını girerek gönderiye yorum yapabilirler. Yorumlar gönderildikten sonra, yönetici onayından sonra görüntülenebilir. Belirli bir gönderi için yorumları listelemek için, veritabanında gönderi kimliğine göre yorumlar alınabilir.
Gönderi görüntüleme sayfasının tasarımı, blog sayfasıyla uyumlu olmalıdır. Gönderinin ana görseli, sayfanın ana odak noktası olmalıdır. Ayrıca, gönderinin metni okunması kolay bir şekilde yazılmalıdır. Kullanıcılara okumayı kolaylaştırmak için, paragraflar arasında boş satırlar bırakılabilir. Gönderinin alt kısmında, yorumların yer aldığı yorum bölümü olduğunu belirtmek için bir yorum düğmesi yerleştirilebilir.
Tüm bunların yanı sıra, gönderi görüntüleme sayfasında geri dönüş butonları ve sosyal medya paylaşım düğmeleri gibi ek özellikler de olabilir. Bu özellikler, kullanıcıların paylaşımlarını ve blog sayfasını keşfetmelerini sağlayarak, blog sitenizin popülerliğini arttırabilir.
Yönetici Paneli
Yönetici paneli, blog sitesi sahibinin gönderileri düzenlemesi, yeni gönderiler eklemesi veya kullanıcıları yönetmesi gibi işlemleri gerçekleştirdiği özel bir alandır. Bu bölümde, PHP OOP kullanarak yönetici paneli tasarımı ve kullanımı hakkında bilgiler verilecektir.
İlk olarak, yönetici paneline giriş yapabilmek için bir giriş sayfası tasarlanmalıdır. Bu sayfada, kullanıcı adı ve şifre gibi bilgilerin girilmesi gerekmektedir. Eğer doğru bilgiler girilirse, kullanıcı yönetici paneline yönlendirilir.
Yönetici paneli, kullanıcının blog gönderilerini düzenlemesine ve yeni gönderiler eklemesine olanak tanır. Bu işlemler için, özel bir gönderi ekleme sayfası tasarlanmalıdır. Bu sayfada, kullanıcının gönderi başlığı, içeriği, kategori seçenekleri ve etiketleri eklemesi gerekmektedir.
Ayrıca, yönetici paneli kullanıcıların bilgilerini ve blog gönderilerini düzenlemesine olanak tanır. Bu işlemler için, kullanıcıların listelendiği bir tablo tasarlanabilir. Bu tabloda, kullanıcıların adı, gönderi başlığı ve tarih gibi bilgiler yer alabilir. Kullanıcılar, yapmak istedikleri değişiklikleri kolayca burada yapabilirler.
Yönetici paneli, kullanıcılara blog sitelerini daha etkin bir şekilde yönetmelerine olanak tanır. Bu sayede, daha profesyonel bir görünüm sunarak, okuyucuların blog sitelerine geri dönmelerini kolaylaştırır.
Giriş Sayfası
Yönetici paneline giriş yapmak için kullanılacak olan giriş sayfası, kullanıcı adı ve şifre girişi sağlayacak bir form içermelidir. Bu formun HTML kodları,