WordPress Tema İçerisinde Farklı Header, Footer, Sidebar Kullanımı - WordPress Türkiye İletişim

Temada Sayfalara Özel Header, Footer ve Sidebar Kullanımı

Bugün yine WP’nin dosyalarını karıştırırken farkettiÄŸim bir konuya da deÄŸinmek istiyorum. ÖrneÄŸin bir tema oluÅŸturdunuz, ve bu temanın single.php’deki header dosyası, anasayfadakinden farklı olsun istiyorsunuz. :) İşte tam bunun için, WP’nin bize saÄŸladığı bir güzellik var :)

Daha önceden belki bir kaç yerde görmüşsünüzdür,

<?php get_sidebar('right'); ?>

kodunu kullanarak, sidebar-right.php dosyasını kullanmanızı sağlarlar. Bu fonksiyon için bir kaç yerde, sadece right ile kullanılabilir diye not düşmüşlerdi. Ancak durum öyle değilmiş :)

Buradan hemen konumuza geri dönelim. Anasayfada kullandığınız dosya, bildiğiniz gibi index.php dosyasıdır.

Bir index.php dosyası ve yine benzer şekilde bir single.php dosyası genelde aşağıdaki yapıda olur:

<?php get_header(); ?>
<!-- burada biraz içerik -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Şimdi burada bizim istediğimiz, single.php için, yani yazıya girildiğinde ekrana gelen sayfa için, farklı header, footer ve sidebar kullanmak.

Örneğin, single.php içerisinde kullanmak istediğimiz dosyalar şunlar olsun:

  1. header-wpu.php
  2. sidebar-semih.php
  3. footer-single.php

O zaman single.php içerisindeki kodu şu şekilde düzenliyoruz:

<?php get_header('wpu'); ?>
<!-- burada biraz içerik -->
<?php get_sidebar('semih'); ?>
<?php get_footer('single'); ?>

Bu düzenlemeyi yaptıktan sonra belirlenen dosyaları kullanabiliyoruz :)

Sizin de farkedebileceğiniz üzere, bu fonksiyonların yapısı şu şekildedir:

<?php
get_header('isim');
//Tema klasöründen header-isim.php dosyasını alır.
get_sidebar('isim');
//Tema klasöründen sidebar-isim.php dosyasını alır.
get_footer('isim');
//Tema klasöründen footer-isim.php dosyasını alır.
?>

Yani isteğinize göre, bir isim belirtip, o dosyayı çağırabilirsiniz :)

Kolay gelsin…

Benzer Yazilar


“Temada Sayfalara Özel Header, Footer ve Sidebar Kullanımı” için 24 Yorum var

  1. Besi diyor ki:

    teşekkürler :)

  2. Çok teşekkür ederim.Çok işime yaradı, gerçekten faydalı bir yazı olmuş.Wordpress Codexden fazla birşey anlamıyordum zaten

  3. Burak Peker diyor ki:

    Merhabalar ;

    Semih bey, ben bir spor haber-taraftar sitesi kuruyorum..isteğim şöyle ;

    beÅŸiktaÅŸ – fenerbahçe – galatasaray kategorilerim mevcut. Bu kategorilere girildiÄŸinde header – sidebar ve footer komple deÄŸiÅŸsin istiyorum.. Gamenow temasını kullanıyorum ve örneÄŸin beÅŸiktaÅŸ sayfasına girildiÄŸinde..

    headerda ; tepede logo – sayfa ve kategori butonları ve onun altında fanatik.com.tr deki gibi beÅŸiktaÅŸ kulüp bilgileri ve maç fikstürünü gösteren bir navbar hazırladım ve sadece beÅŸiktaÅŸ bölümünde bu görünecek..galatasarayda ve fenerbahçe de de kendine özel tabi..

    sidebarda ; kategoriye sahip takımın son maç sonucu – fikstürü ve puan durumundaki yeri..

    footerda ; kategoriye sahip takımın özel bir tasarım arkaplanı..

    bunların hepsini hazırladım ancak bu cat id ayarlamasıyla nasıl kategoriye özel gömebileceğimi çözemedim.. bu isteklerimden sadece sidebar da olsa bana yeter şu aşamada..

    ilginiz için teÅŸekkür ederim…

  4. Osman diyor ki:

    Peki header da 2 ayrı resim varsa 2 sine farklı link nasıl verilir? header.php dosyası ile bunu nasıl sağlarız? Header daki resimlerden biri ana sayfaya diğeri ise başka bir siteye yönlendirme yapabilirmi ?

  5. Semih diyor ki:

    Tabi ki de :)

  6. kelebek diyor ki:

    qüzel makale kendi makalenizmi ?

  7. sanatkop diyor ki:

    semih hocam, her kategori için farklı footer oluÅŸtursak, bunu yazı açıldığında ilgili kategorinin footerı olarak çekmek mümkün olur mu. saygılar…

  8. ugur diyor ki:

    tamam semih kardeşim özür dilerim sen yorumları sayfalamışsın görmemişim sayfalamayı.teşekkür ederim

  9. ugur diyor ki:

    semih bu konuyla ilgili yorumlarımı kullanıma açarmısın rica etsem.burada bana kod vermiştin o kodları alıp kullanmam gerek de teşekkürler

  10. sait diyor ki:

    Ben single.php’de farklı sidebar kullanmak için sidebarsingle.php yapıyorum :) gerenk yok böyle ÅŸeylere :P

  11. JoSePh diyor ki:

    özel şablonlarda işe yarar bi özellik zaten kodlara biraz bakınca direk göze batıyo bu olay

  12. ugur diyor ki:

    semih kardesim simdi dosya derken notepetde bir doya acıp icine senin verdiğin kodları atıp uzantısını php girip wordprese mi atıcam.biraz daha açıklayıcı olursan sevinirim kardes.çünkü ihtiyacım olan bir yapı bu

  13. ugur diyor ki:

    semih kardeÅŸim sitem http://www.bahsevarim.net
    benim yanda 2tane sidebar ben bunun birinin istatistikler linki tıklayınca görnmesini istemiyorum.senin kodu koydum index tema kaydı

  14. ugur eydemir diyor ki:

    semih kardesim.ben istediğim sayfalarda görünmesini istemiyorum sidebarın onu n için hangi dosyadan kalıdmalıyım bu kodu.örneğin istatistikeler sayfamda yan tarafda sidebarın birisi görünmesin ve bana biraz daha yer açılsın.onun için nerdeki kodu silmeliyim.teşekürler

  15. ugur diyor ki:

    merhaba semih kardesim paylaşımların yine çok güzel.şimdi burada demek istediğin şey şu mu?
    istediğiniz sayfada sidebarı ,Headerı, Footeri kaldıradabilirmiyiz.zira öyleyse ben yapmaya başlayacağım.yani istediğim sayfalarda sidebarın 1 tanesinin görünmesini istemiyorumda.iki tane sidebar var bende.istatistik eklemek istiyorum ama benim sayfalar dar iki tane sidebar olduğu için

  16. Semih diyor ki:

    Bu konuda söylediğim şey, farklı sidebar kullanımı. Sizin dediğiniz gibi sidebarı kaldırmak için, sidebarın görünmesini istemediğiniz yere göre düzenleme yapmalısınız. Örneğin, sidebarın sayfalarda görünmemesini istiyorsanız, page.php den get_sidebarı silebilirsiniz. yada yazı içeriğinde görünmemesi için, sadece single.php den kaldırabilirsiniz.

  17. Semih diyor ki:

    Bunun için temaya kod eklemelisiniz. Örneğin eğer sayfanın ismi istatistikler ise,
    <?php if(!is_page('istatistikler')) {
    get_sidebar('1');
    get_sidebar('2');
    } ?>

    gibi bir kod yazarsanız, ismi istatistikler olmayan sayfalarda iki sidebarıda gösterir. Tabi burda sizin sidebarınızın nasıl olduÄŸunu bilmediÄŸim için, böyle bir yanıt verdim. Ama sonuçta kontrol aynı ÅŸekilde olacak yani is_page(’isim’) ÅŸeklinde.

  18. Semih diyor ki:

    Eğer belirttiğim şekilde bi dosya oluşturmamışsanız temanın kayması gayet doğal :) Tekrar bi okuyun :)

  19. Semih diyor ki:

    Örneğin single.php açtığınızda,
    <?php get_header(); ?> kodunu görürsünüz.
    bunun yerine:
    <?php get_header('single'); ?> yazarsanız:
    header-single.php kullanabiliyorsunuz.

  20. Semih diyor ki:

    include her sürümde işe yaramayabilir hocam :)

  21. Semih diyor ki:

    Bu konuya yorum yazmışsanız ve ben o yorumlara cevap vermiÅŸsem, yorumlar buradadır. Bugüne kadar spamlar hariç hiç yorum silmedim…? BaÅŸka bir konuda olmasın?

  22. Semih diyor ki:

    File exists fonksiyonu ile dosyanın olup olmadığını kontrol ederek ona göre bir footer çağırılabilir.
    Örneğin:
    [php]< ?php
    $id = $cat->id;
    if(file_exists(”footer-$id”)){ get_footer($id); } else { get_footer(); }
    ?>[/php]
    gibi bir fonksiyon kontrol yapıp dosya varsa ilgili footerı yoksa varsayılan footerı getirir. Tabi biraz daha değişmesi lazım yukarıdaki kodların :)

Kendimi Şanslı Hissediyorum

Şansını denemek istiyorsan, yukarıya tıkla :)

Duyuru

WordPress'inizi yeni özellikler için ve olası güvenlik açıklarına karşın 3.0 sürüme yükseltmeniz tavsiye edilir.

Yükleme Sayfası

Bağış

Bağlantılar

  • Lida turunç filizleri ile üretilmektedir
  • Biber Hapı Meksika Biber Kapsülü.