MENU

WordPress Farklı Kategoriler için Farklı single.php Kullanımı

Anasayfa » Wordpress » WordPress Farklı Kategoriler için Farklı single.php Kullanımı
WordPress Farklı Kategoriler için Farklı single.php Kullanımı

WordPress tasarımcılarının kullandığı güzel bir yöntemden daha bahsedicem. Eğer sizde yeni WordPress teması oluşturmaya çalışıyorsanız bu yazı size çok faydalı olcaktır.

Bazı kategori gruplarında özel alanlar oluşturup ek yazılar yazabilir, bazı kategori içeriklerindeki reklamları farklı yerleştirebilir veya bir çok farklı işlem yapabilirsiniz. Ben buna neden ihtiyaç duydum? Referanslar ile normal blog yazılarının içerik sayfalarını birbirinden ayırmam gerekiyordu ve bu şekilde ayırabildim.

 

Farklı single.php oluşturmak

Mantık çok kolay PHP if else ile bu işlemi yapıcaz.

Öncelikle Notepad++ programı ile masaüstümüzde bir single.php dosyası oluşturuyoruz içerisinede alttaki kodları yazıyoruz.

<?php
$post = $wp_query->post;
if ( in_category('1') ) {
 include(TEMPLATEPATH . '/single-blog.php'); }
elseif ( in_category('2') ) {
 include(TEMPLATEPATH . '/single-referanslar.php'); }
else {
 include(TEMPLATEPATH . '/single-normal.php');
}
?>

Yukarıdaki kodumuzda in_category kısmına yazdığımız 1 kategori ID‘si oluyor. Kategori ID’si 1 olan yazılarda single-blog.php dosyasını açmasını söylüyoruz. Kategori ID’si 2 olanları ise single-referanslar.php dosyasına yönlendiriyoruz eğer bunlardan hiç biri değil ise single-normal.php dosyasına yönlendiriyoruz.

WordPress Kategori ID’sini bulmak

Bu şekilde referanslar ve blog sayfa içeriklerimi değiştirmiş oldum. Burada kullanabileceğiniz farklı bir mantık daha göstereceğim belki hazır bir tema yapıp ücretsiz dağıtmak istiyorsunuz yukarıdaki şekilde dağıttığınızda insanlar kodlara girip ID tanımlama yapması gerekiyor. Bunun önüne geçmek için kategori isimleri ile bu durumu çözebiliriz. Alttaki kodda ise kategori ID’si değilde ismine yer verdim.

<?php
  $post = $wp_query->post;
  if (in_category('blog')) {
      include(TEMPLATEPATH.'/single_blog.php');
  } elseif (in_category('referanslar')) {
      include(TEMPLATEPATH.'/single_referanslar.php');
  } else{
      include(TEMPLATEPATH.'/single_normal.php');
  }
?>

Artık temamı indirenlere şunu söyleyebilirim “referanslar” adında oluşturacağınız kategorilerde içerikler bu şekilde gelecek.

İlerleyen yazılarımda diğer konularada değineceğim WordPress 3.8 ile gelen Post Formats ile ilgili geniş bir yazı yazmayı düşünüyorum. :)

Rooteto Teknoloji Blogu

Rooteto WordPress, Sosyal Medya, Teknoloji, HD Resimler ve Video paylaşımında bulunan bağımsız olarak çalışan online haber teknoloji sitesidir.

Yaklaşık 1 Milyondan fazla tekil aylık ziyaretci ile Rooteto'yu büyük yapan teknoloji topluluklarıdır. 2009 yılında kurulan Rooteto'nun genel merkez ofisi İzmir / Bornova'dadır.