Tema Kurulumu

Tema, sitenizin görünüşünü belirleyen paket: şablon dosyaları, CSS, düzen seçenekleri. Yeni bir jekcms kurulumu açar açmaz bir şeyler gösterebilsin diye starter adında yerleşik bir tema ile gelir. Siz isterseniz onu değiştirip farklı bir tema yüklersiniz. Bu sayfa o süreci gösteriyor.

Temalar nerede tutulur?

jekcms'teki temalar /themes/{slug}/ klasörü altında duran düz PHP + CSS klasörleridir. Her temanın en azından şu dosyaları içermesi gerekir:

themes/
  my-theme/
    theme.json
    templates/
      header.php
      footer.php
      index.php
      single.php
    assets/
      css/style.css

Klasör adı (my-theme gibi) slug diye geçer — jekcms temaya her yerde bu adla referans verir (veritabanında, URL'lerde, admin panelde). Küçük harf, tireli, boşluksuz olmalı.

Tema nasıl yüklenir?

İki yolu var.

Yol 1: ZIP yükleme (en kolay)

Admin panelde Appearance → Themes → Upload Theme butonuna tıklayın ve temanın ZIP dosyasını yükleyin. jekcms arkada klasörü açar, theme.json dosyasını kontrol eder ve bir şey eksikse ya da aynı slug'ta başka bir tema varsa yüklemeyi reddeder. Yönetilen barındırma kurulumlarında (managed hosting) genelde sadece bu yol açıktır.

Yol 2: Dosyayı doğrudan klasöre bırakmak

Sunucuya shell ya da FTP erişiminiz varsa (kendi kurulumunuz, VPS gibi), temayı doğrudan /themes/ klasörüne çıkartabilirsiniz:

cd /var/www/jekcms/themes
unzip ~/downloads/ocean-theme.zip
# -> themes/ocean/ oluşturur

jekcms bir sonraki admin sayfa yüklenmesinde yeni klasörü keşfeder.

theme.json — en basit hali

Her temanın kökünde bir theme.json olmak zorunda. En asgarisi şöyle:

{
    "name": "Ocean",
    "slug": "ocean",
    "version": "1.0.0",
    "author": "Your Name",
    "description": "A clean coastal theme.",
    "license": "free"
}

slug alanı klasör adıyla birebir aynı olmalı. Ücretli bir tema hazırlıyorsanız "license": "premium" yazın (aşağıda anlatacağız). Daha ayrıntılı alanlar için theme.json şeması sayfasına bakın.

Temayı aktif etmek

Appearance → Themes sayfasında bulduğu her tema önizleme görseliyle listelenir. Canlıya almak istediğinizde sadece Activate düğmesine basın. Anında geçer — önbellek temizleme falan gerekmez. Aktif temanın slug'ı active_theme ayarına kaydedilir.

Çok siteli kurulumda öncelik sırası

Birden fazla siteniz varsa jekcms şu sırayla bakar:

  1. Site kendi seçimini yapmışsa, o kullanılır. Hepsini ezer.
  2. Ağ genelinde bir varsayılan ayarlanmışsa (Network Admin → Settings → Default Theme), kendi seçimini yapmayan siteler onu kullanır.
  3. Hiçbir şey bulunmazsa starter devreye girer (örn. seçilen temanın klasörü silinmişse).

Bozuk bir site seçimi beyaz sayfaya değil ağ varsayılanına düşer. Güvenlik ağı var yani.

starter teması

themes/starter/ her kurulumla birlikte gelir ve silinemez. "En kötü ihtimalle bir şey render etsin" güvencesidir. Kendi tasarımınıza başlangıç noktası yapmak için starter klasörünü yeni bir slug altında kopyalayın ve kopyayı aktif edin — orijinali silerek bu güvenlik ağını ortadan kaldırmayın.

Premium temalar ve lisans meselesi

Bir temanın theme.json dosyasında "license": "premium" yazıyorsa, o tema yalnızca sitenizde STD lisans veya üstü varsa aktif edilebilir. FREE tier'daysanız:

  • Premium tema listede görünür ama Activate düğmesi pasif
  • Üstüne gelince "bu tema için yükseltin" diye bir ipucu çıkar
  • API üzerinden aktif etmeye çalışırsanız 403 Forbidden ile license_required hatası dönüyor

Lisans durumu hem aktivasyon anında hem de her sayfa yüklenmesinde kontrol edilir. STD lisansınız bitip FREE'ye düşerse bir sonraki istekte jekcms otomatik olarak ağ varsayılanına geri döner — siteniz bozuk premium tema yüzünden kilitlenmez.

Temayı güvenli silmek

Silmeden önce iki şeyi kontrol edin:

  1. Tema hiçbir sitede aktif tema değil (Network Admin → Sites → Active Theme sütunundan bakın)
  2. Ağ varsayılanı değil

Bunları doğruladıktan sonra ya Appearance → Themes → Delete deyin ya da /themes/{slug}/ klasörünü doğrudan silin. jekcms bir sonraki admin sayfa yüklenmesinde tekrar tarar ve listeden çıkarır.

Dikkat: Bir temayı silmek onunla ilgili özelleştirici değerlerini silmez. Aynı slug'ı sonradan yeniden kurarsanız önceki renk, font, yazı tipi ayarlarınız geri gelir. Taşınma senaryolarında rahat bir özellik.

Yeniliklerden ilk sen haberdar ol

Yeni özellikler, sürüm notları ve CMS rehberleri — ayda birkaç e-posta, spam yok.