Şablon dosyaları

[adinserter block=”2″]

Şablon terminolojisi

Şablon (template) terimi wordpress temalarla çalışırken farklı şekillerde kullanılır:

  • Şablon dosyaları wordpress temalarda yer alır ve siştenizin nasıl göründüğü ile alakalıdır.
  • Sayfa şablonları sadece sayfalara uygulanır ve onların görünümünü ve havasını değişmek için kullanılır. Sayfa şablonu sadece bir tek sayfaya uygulandığı gibi bir sayfa bölümüne ve sayfalar sınıfına uygulanabilir.
  • Şablon etiketleri bir şablon dosyasında bir datayı bulup getirmek ve göstermek  için yerleşik WordPress fonksiyonlarıdır. (the_title() ve the_content()) gibi.
  • Şablon hiyerarşisi WordPress’in hangi şablon dosya(lar)sını (ve talep edilen bağlı içeriği) kullanmaya karar verme mantığıdır.

Şablon dosyaları

WordPress temaları şablon dosyalarından yapılır. Bu PHP dosyaları HTML, CSS, şablon etiketleri ve PHP kod’undan meydana gelir.

Tema yaparken sayfa düzeni ve tasarımının çeşitli parçalarını etkileyen şablonlar kullanacaksınız. Örneğin, header.php şablonu bir header/başlık şablonu oluşturmaya, comments.php şablonu yorum eklemeye yarar.

Birisi sitenizde bir sayfa ziyaret ettiğinde WordPress talebe temelinde bir şablon yükler. Şablon dosyasında görüntelen içerik türü, şablon dosyasıyla bağlı olan Post Type/yazı türü tarafından belirlenir. Şablon hiyerarşisi Wordpress şablon türü talebine göre ve temada şablonun olup olmamasına göre yükleyecektir. Sonra sunucu şablondaki php kodlarını ayrıştırıp ziyaretçiye HTML olarak döndürecektir.

En kritik şablon dosyası index.php’dir. Şablon hiyeraşisinden daha önemli bir şablon yoktur. Temanın sadece index.php şablonu ihtiyacı olmasına rağmen, genellikle temalar, farklı içerik türleri ve bağlamları görüntülemek için çok sayıda şablon içerir.

Şablon parsiyelleri/kısımları

Şablon parsiyelleri örneğin site header/başlığı gibi bir şablonun başka şablonlara eklenen parçalarıdır.  Şablon parsiyelleri tema yapımını kolaylaştırıcı yöntem olarak birçok şablona gömülebilir. Genel  şablon parsiyelleri aşağıdadır:

  • header.php site başlıklarını üretirken
  • footer.php footer üretirken
  • sidebar.php sidebar/yanbar üretirken

Yukardaki şablonlar sadece bir sayfaya uygulanabileceği gibi istenen kadar şablon parsiyeli oluşturup diğer şablon sayfalarında kullanabilirsiniz.
[adinserter block=”4″]
[adinserter block=”2″]
Genel WordPress şablon dosyaları

Aşağıdaki listede WordPress tarafından tanınan bazı temel tema şablonları bulunmaktadır.

  • index.php
    Ana şablon dosyasıdır. Bütün temalarda gereklidir.
  • style.css
    Ana stil sayfasıdır. Bütün temalarda gereklidir ve site temanız hakkında bilgi başlığı içerir.
  • rtl.css
    Sağdan sola yazılan diller için eklenen stil sayfadır. Sitenin yazısını otomatik sağdan sola çevirir.
  • comments.php
    Yorumlar şablonudur.
  • front-page.php
    Bu şablon dosyası Admin>Setting>Reading ‘den statik bir önsayfa seçildiğinde kullanılır.
  • home.php
    Anasayfa şablonu varsayılan olarak önsayfadır. Eğer WordPress panelde statik bir önsayfa seçmezseniz bu sayfa varsayılan olarak son yazıları göstermek için kullanılır.
  • header.php 
    Başlık şablonu dosyası genellikle sitenizin belge türünü, meta bilgileri ile stil dosyasına, scriptlere/betiklere ve diğer verilere bağlantılar içerir.
  • single.php
    Tek yazı sayfası şablonu bir ziyaretçi tek yazıyı okumak istediğinde kullanılır. Bu ve bütün sorgulanan şablonlar mevcut değilse index.php kullanılır.
  • single-{post-type}.php
    Tek yazı şablonu  ziyaretçi arafından özel bir yazı türü talep edildiğinde kullanılır. Örneğin single-kitap.php, kitap isimli özel yazı türünden tek yazıyı göstermek  için kullanılır. Eğer özel yarı türü için spesifik sorgu şablonu yoksa index.php kullanılır.
  • archive-{post-type}.php
    Ziyaretçi özel bir yazı türü arşivi talep ettiğinde bir arşiv yazı türü şablonu kullanılabilir. Örneğin archive-kitap.php şablonu kitaplar isimli özel yazı türünün yazı arşivlerini göstermek için kullanılır. Eğer archive-{post-type}.php  yoksa yerine archive.php şablonu kullanılır.
  • page.php
    Ziyaretçiler müstakil bir sayfaları talep ettiğinde sayfa şablonu kullanılır
  • page-{slug}.php
    Ziyaretçi spesifik bir sayfayı talep ettiğinde kullanılır. Örneğin sayfa-hakkimizda.php (page-about.php) gibi.
  • category.php
    Ziyaretçiler bir kategorideki yazıları görmek istediğinde kullanılır.
  • tag.php
    Ziyaretçiler  etiketlerine göre yazıları görmek istediğinde kullanılır.
  • taxonomy.php
    Taksonomi terimi şablonu ziyaretçi özel bir taksonomi terimi talep ettiğinde kullanılır.
  • author.php
    Yazar sayfa şablonu ziyaretçi bir yazar sayfasını görmek istediğinde kullanılır.
  • date.php
    Tarih/zaman şablonu yazılar sayfa veya tarih gerektirdiğinde kullanılır.
    Örneğin şu sayfalar bu takılarla (slugs) yapılmıştır:
    http://example.com/blog/2014/
    http://example.com/blog/2014/05/
    http://example.com/blog/2014/05/26/
  • archive.php
    Arşiv şablonu ziyaretçiler yazıları kategori, yazar, tarih’e göre istediğinde kullanılır. NOT: Eğer category.php, author.php, ve date.php spesifik şablon dosyaları varsa bu şablon hükümsüz kalır.
  • search.php
    Arama sonuçları şablonu ziyaretçinin talep ettiği arama sonuçlarını görüntülemek için kullanılır.
  • attachment.php
    Eklenti şablonu resim, pdf veya diğer bir medya dosyasını  bir eklentiyi (eklemeyi) görüntülerken kullanılır.
  • image.php
    Bu şablon attachment.php dosyasının daha gelişmiş versiyonudur ve tek bir resmi görüntülerken kullanılır. Eğer bu şablon dosyası yoksa yerine attachment.php şablonu kullanılır.
  • 404.php
    Wordpress bir sayfayı, yazıyı yada başka bir içeriği bulamadığında ziyaretçiye gösterilen sayfa şablonudur.

Şablon dosyalarını kullanma

WordPress şablonları içinde diğer şablonları dahil ederek ya da diğer türlü sitenizi özelleştirerek içeriği dinamik olarak olarak göstermek adına etiket şablonları (template tags) kullanabilirsiniz.

Örneğin nihai sayfa üretiminde index.php dosyasına aşağıdaki diğer dosyaları dahil edebilirsiniz.

etiketlerini kullanabiliriz.

İşte sayfanıza özel şablonlar eklemek için WordPress şablon etiketleri örneği:

Detaylı bilgi için WordPress’in şablon etiketleri sayfasını inceleyebilirsiniz.

Bileşen şablonları bağlama hakkında daha fazla bilgi için Tema Dosyalar & Dizinler Bağlama bölümüne bakın.

Yazı çeviridir.
Kaynak: WordPress.org

[adinserter block=”4″]
[adinserter block=”3″]