Öne Çıkan Görsel Kullanımı

wordpress-one-cikan-gorsel

Merhaba arkadaşlar bu yazımda özel alan ile resim eklemek yerine öne çıkan görseli kullanmayı göstereceğim. Yıllardır WordPress teması yazarken anasayfada, kategorilerde yada post sayfasında yazının resmini görüntülemek için hep özel alan kullandık. Ancak sevgili WordPress geliştiricilerimiz bize “öne çıkan görsel” şeklinde opsiyon hazırladılar ki bu opsiyon sayesinde post yayınlarken oluşan vakit kaybı bir nebze olsun azaldı. Öncelikle özel alanları temanın içerisine nasıl eklediğimizi anlatayım.

1. Tema İçerisine Özel Alan Ekleme

Özel alanlar tema geliştiricilerinin en çok kullandığı WordPress özelliklerinden birisidir. Özel alan sayesinde her post için farklı olan bir özelliği sitenin istenilen bölgesinde gösterebilirsiniz. Özel alanı sitenin herhangi bir yerinde kullanabilmek için aşağıdaki özel alan çekme kodundan faydalanıyoruz;

<?php  get_post_meta(); ?>

Öncelikle bu kodun özelliklerini inceleyelim;

get_post_meta(); kendi içerisinde 3 adet alt değer bulundurur. Bunlar $post_id$key ve $single ‘dır.

$post_id integer bir değerdir. Yani sayısal olması gerekir. Ayrıca post_id zorunlu bir değerdir, eğer kullanılmazsa kod çalışmayacaktır. $post_id bizim kullanmak istediğimiz postun kimliğini verir ki bu sayede hangi postun özel alanını çekmeye çalıştığımızı ifade edebilelim. Post id’sini çekmek için de döngü içerisinde get_the_id(); kodunu kullanırız.

$key değeri bizim hangi özel alanı çekmeye çalıştığımızı belirler. Örneğin resim özel alanını çekeceksek key yerine “resim” yazmamız gerekir.

$single değeri boolean’dır. İki farklı değeri vardır, true ve false. False değeri varsayılan değerdir ve $single değerini boş bırakırsak false olarak gözükecek ve bize bir dizi sonucu verecektir. Ancak bizim istediğimiz tek bir sonuç olduğu için bu değeri true olarak değiştiriyoruz.

Kodun kullanım şekli aşağıdaki gibi olacaktır.

<?php $meta_values = get_post_meta( $post_id, $key, $single ); ?>

 

Şimdi gelelim döngü içerisinde nasıl kullanacağımıza. Bu örnekte thumbnail isimli özel alanımızı img değerine nasıl yazacağımızı göstereceğim. Kullanacağım kod dizisi aşağıdaki gibi olacaktır.

 

<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>

 <?php if( get_post_meta($post->ID, "thumbnail", true) ): ?>
 <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><img src="<?php echo get_post_meta($post->ID, "thumbnail", true); ?>"  alt="<?php the_title(); ?>"/></a>

 <?php else: ?>
 <?php endif; ?>

<?php endwhile; else: endif; ?>

Kodu yazarken öncelikle if(have_posts()): kodu ile bir döngü başlattım. get_post_meta(); kodunu bu döngünün içerisinde kullandım. get_post_meta(): nın içerisinde gördüğünüz “$post->ID” bizim postun kimliğini çekmemizi sağlar. Ardından kullanmak istediğim özel alanın adını yazdım ki burada “thumbnail” oluyor, ve sonra da “true” şeklinde bitirdim. Postun başlığını the_title kodu ile permalinkimize entegre ettikten sonra echo komutu ile “thumbnail” değerini img src=”” nin içerisine çektim.

 

Burada kullandığım if ve else komutlarını ise eğer thumbnail değeri boş bırakıldıysa yerine neyin getirileceğini belirtmek için koydum.

 

Öne Çıkan Görseli Kullanmak

Şimdi gelelim asıl amacımıza. özel alan kullanmak gördüğünüz gibi zor olmasa da zaman alıcı bir işlem ve fazladan komut çalışmasına sebep oluyor, ki bu da seo açısından pek istenilen bir durum değildir. Hem CPU’nun fazladan çalışmasına hem de sitenin açılma zamanının uzamasına sebep olur. Öne çıkan görseli kullanabilmek için öncelikle postlarınızda öne çıkan görsel seçmiş olmanız gerekir ki bunu yeni post eklerken etiket ekleme widget’ının hemen altında bulunan panelden çok kolay bir şekilde yapabilirsiniz. İkinci olarak da yukarıda yazdığım döngü yerine daha basit ve kullanışlı olan şu döngüyü kullanmanız gerekiyor.

<?php if ( has_post_thumbnail()) : ?>
 <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
 <?php the_post_thumbnail('');?>
 </a>
 <?php else: ?>

<?php endif;?>

 

Döngüden sonra gelen thumbnail bölümüne yani özel alan ekleme bölümüne bu kodu yazarsak eğer işimiz bitmiş demektir. Umarım yararlı bir yazı olmuştur. Yararlı olduğunu düşünüyorsanız eğer yorumlarınızı eksik etmeyin

 

İyi çalışmalar…

Facebook Profile photo

#r00tadmin #Basit Bir kuL #Allah (c.c) Bir kuLu işte bazen bir adem bazen bir aLem !

Facebook Profile photo

Author: Guest

#r00tadmin #Basit Bir kuL #Allah (c.c) Bir kuLu işte bazen bir adem bazen bir aLem !

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir