28 Aralık 2008

Etiketleri Pencere Başlığında Gösterelim

WordPress Yorum Ekle

SEO'ya etkisi olur mu bilmem ama tekil yazılarınızı gösterirken yazı etiketlerini pencere başlığına eklemek isteyebilirsiniz. Bunun için küçük bir fonksiyon yazdım.
Fonksiyon kodları aşağıda, bunu temanızın functions.php dosyası içerisine ekleyin.

  1. function etiket_baslik($ayrac = ' | ', $adet = 1000){
  2.  if ( is_single() )  {
  3.     global  $post;
  4.    $tags = wp_get_object_terms((int) $post->ID, 'post_tag', 'fields = names');
  5.    $liste = '';
  6.     if ( !empty( $tags ) ) {
  7.      $i = 1;
  8.      $adet = (int) $adet;
  9.      $ayrac =strip_tags(htmlspecialchars($ayrac));
  10.      foreach ((array) $tags as $tag) {
  11.       if ($i > $adet) break;
  12.           $liste .= htmlspecialchars($tag->name) . $ayrac;
  13.       $i++;
  14.      }
  15.      echo strip_tags($liste);
  16.    }
  17.  }
  18. }

Bunu yaptıktan sonra temanızın header.php dosyasına aşağıdaki kodları ekleyerek fonksiyonu çağırabilirsiniz.

  1. <title>
  2. <?php
  3.  wp_title(' | ', true, 'right');
  4.  etiket_baslik(' | ', 6);
  5. ?>
  6. <?php bloginfo('name'); ?>
  7. </title>

Normalde bu bölge aşağıdaki gibi olabilir.

  1. <title>
  2. <?php wp_title(' &raquo ', true, 'right'); ?> <?php bloginfo('name'); ?>
  3. </title>

Fonksiyonu size uygun olacak şekilde ekleyin. Fonksiyon iki parametre alıyor. Birinci parametre etiketler arasına konulacak ayraç olup, varsayılan olarak | sembolüdür. İkinci parametre ise gösterilecek olan etiket sayısı, varsayılan 1000'dir. Yani bu parametreyi vermezseniz bütün etiketler gösterilir gibi ama bence 10-20'yi geçmeyin. Örnekteki gibi kullanırsanız, başlığınız bir yazıya girdiğinizde aşağıdaki gibi görünecek.

Mahmut Armut Buradaydı yazının başlığıdır. Başlığın sonunda site adı yer alacak.
Fonksiyonun farklı kullanımlarına örnekler:
etiket_baslik(' | ', 6); İlk 6 etiketi aralarına | işareti koyarak gösterir.
etiket_baslik(' > '); Bütün etiketleri aralarına > koyarak gösterir.
etiket_baslik(' » ', 10); İlk 10 etiketi aralarına » karakterini koyarak gösterir.
etiket_baslik(); Bütün etiketleri aralarına | karakterini koyarak gösterir.

Hepsi bu kadar. Kodu isterseniz, meta keywords bölümüne de ekleyebilirsiniz. Sorgu bir tane fazladan sorgu gerçekleştirecektir, o da sadece tekil sayfalarda.


Bu yazının kısa bağlantısı http://www.yakupgovler.com/?p=634.

Yazılarımı RSS aboneliği ile takip edebilir, yeni yazılarıma kolaylıkla ulaşabilirsiniz. Bunun için ise RSS adresimi kullanabilirsiniz.