Mikrocode ile tema yapımı

Mikrocode altyapısı ile kolayca web siteleri ve daha fazlasını tasarlayabilirsiniz.

Başlarken

Mikrocode tek başına sadece üyelikli işlemlerde yardımcı olabilir.
Fakat ister hazır temalardan ister kendi yaptığınız temalardan yükleyerek tüm dünyaya açılabilirsiniz.

Temalar ile e-ticaret, kurumsal, blog, medya, haber vb. aklınıza gelebilecek her türlü siteyi tasarlayabilirsiniz. Sitelerin yanı sıra CMS, CRM sistemleride tasarlamak mümkün.

Temalar kendilerine özgü yapılandırma, modül ve eklenti dosyaları içerebilir. Bu dosyalar sayesinde Mikrocode, yapısını temaya göre değiştirebilir. Birden fazla tema barındırmaya imkan veren Mikrocode, bu temaları ve dahili dosyalarını tek tıklama ile kurabilmenizi sağlar.

Gereksinimler

Tema yapabilmek için bilgisayarınızda bulunması gereken yazılımlar ve sizde olması gereken bilgiler.

  • Bilgisayarınıza, kodları yazabilmek için kullanışlı bir metin editörü kurun.
    VS Code kullanabilirsiniz.
  • Yaptığınız temayı canlı test edebilmek için sanal sunucu yazılımı kurabilirsiniz.
    Xampp veya WampServer kullanabilirsiniz
Bilmeniz gerekenler
  • PHP - Sunucu taraflı programlama dili
  • HTML - Tasarım için işaretleme dili
  • CSS - Tasarıma çeşitli görsellikler vermeye yarar
  • Javascript - Tarayıcılar tarafından kullanılabilen dinamik programlama dili

Sitemizi belirleyelim

Yapacağımız temaya göre, kullanacağımız özellikler ve izleyeceğimiz yollar farklılık gösterebilir.

Düşüncelerimizi, gezi hatıralarımızı vb. yazıları paylaşabileceğimiz bir blog sitesi yapalım.
Gerekirse kazanç bile sağlayabileceğimiz, özgün içerikler ile dolu olabilecek bu sitede nelere ihtiyacımız olacak?

Tema ihtiyacımızı belirleyelim

Yapacağımız temada minimum hangi sayfalara ve modüllere ihtiyacımız olacak?

  • Anasayfa
  • Arama sayfası
  • İletişim sayfası ve formu
  • Kategori ve blog detay sayfası
  • Tanıtım yazıları için sayfalar
  • Üyelik modülü (oturum)
  • Yazılarımız için yorum yapılabilmesi

Nereden başlayacağız?

Öncelikle her temada zorunlu fonksiyonlar, rotalar, ayarlar için gerekleri dosyalardan başlayacağız.
Bu dosyalarda link yapımızı belirleyebiliriz, bu sayede SEO uyumlu linkler oluşturmuş oluruz.
Üyelik modülü (oturum), çoklu dil vb. özelliklerin tema tarafından kullanılmasını sağlayabiliriz.

Temanın Dizin Yapısı

Temanın dizin yapısı bir çok temada birbirine benzerdir, fakat bazı temalar ihtiyaçlara göre farklılıklar gösterebilir.

Zorunlu dizin yapısı nasıl olmalı?
  • tema-ismi Temanın ana dizini
    • functions Tema çekirdeği
      • functions.php Tüm tema yapısında dahil edilecek
      • settings.php Route, dil, oturum vb. ayarları içerir
      • ornek1.php ornek1.php dosyasının veri işleme komutlarını içerir
    • info.xml Temanın kimlik bilgileri tutulur
    • ornek1.php Bu dosyanın karşılığı functions klasöründe aranır

Peki, biz blog teması için nasıl bir yapı kuracağız?
  • blog Temanın ana dizini
    • functions Tema çekirdeği
      • user Ana dizindeki user klasöründekilerden önce yüklenecekler
        • edit.php
        • login.php
        • profile.php
        • register.php
      • functions.php Tüm tema yapısında dahil edilecek
      • settings.php Route, dil, oturum vb. ayarları içerir
      • index.php index.php dosyasının veri işleme komutlarını içerir
      • categories.php
      • single.php
      • contact.php
      • search.php
      • page.php
    • posts Ajax ile veri alan php dosyalarını barındıracağız
      • send-comment.php Gönderilen yorumu kaydedecek
      • send-message.php İletişim formundan gelen mesajı kaydedecek
      • user-edit.php Kullanıcı bilgilerini kaydedecek
      • user-login.php Oturumu açan sınıfa bağlayacak
      • user-register.php Kullanıcı kaydedecek
    • theme Temanın tasarım dosyaları yer alacak
      • css CSS dosyalarını barındıracağız
        • style.css Tüm tema yapısında çağırılan css
        • slider.css Sadece slayt kullanılan sayfalara çağrılacak
        • *.css vb. devam eder
      • fonts Yazı tiplerini dosyalarını barındıracağız
        • font.css Yazı tipinin css kodları
        • *.uzanti Yazı tipinin diğer dosyaları
      • js Javascript dosyalarını barındıracağız
        • main.js Tüm tema yapısında çağırılan javascript kodları
        • slider.js Sadece slayt kullanılan sayfalara çağrılacak
        • *.js vb. devam eder
      • template Temanın şablon dosyaları yer alacak
        • header.php Temanın her yerde ilk yüklenen tasarımı
        • footer.php Temanın her yerde son yüklenen tasarımı
    • user Üyelik ile ilgili php dosyalarını barındıracağız
      • edit.php Profil düzenleme formunu
      • login.php Giriş formunu içerecek
      • logout.php Oturumu kapatan sınıfa bağlayacak
      • register.php Kayıt formunu içerecek
      • profile.php Profilleri önizleyecek
    • info.xml Temanın kimlik bilgileri tutulur
    • index.php Bu dosyanın karşılığı functions klasöründe aranır
    • categories.php
    • single.php
    • contact.php
    • search.php
    • page.php