WordPress için resimli benzer yazılar

WordPress siteniz için resimli benzer yazıları görüntülemeye yer vereceğim bu başlık ile 🙂 Aslında uzun süredir benden istenen bir makaleydi ancak askerlik v.b. derken ancak değinebiliyorum konuya. Bu işlem için herhangi bir eklenti kullanmayacağız. Uygulamayı elle yapacağız ve temanızın function.php dosyasından faydalanacağız.

WordPress için resimli benzer yazılar

Bunun için kendi sitemde kullandığım kodlardan faydalanacaksınız. Her şey çok basit 😉

Fonksiyon kodları

Öncelikle temanızın function.php dosyasını açın ve alttaki kodları uygun bir yere ekleyin.

[php]

## benzer yazılar
function tema_benzer_yazilar() {
global $wpdb, $id;

$mevcut_yazi_etiket = get_the_tags($id);
if($mevcut_yazi_etiket) {
$yazi_etiketleri = array();
foreach($mevcut_yazi_etiket as $anahtar=>$deger) {
$yazi_etiketleri[] = $deger->slug;
}

$yazi_etiketleri = implode(‘,’,$yazi_etiketleri);
}

$kategori_1 = array();
$cat_obj = get_the_category($id);

foreach($cat_obj as $_liste) {
$kategori_1[] = $_liste->cat_ID;
}

$kategori_1 = implode(‘,’,$kategori_1);

$rastgeleyazi = get_posts(‘numberposts=4&orderby=rand&category=’. $kategori_1.’&tag=’.$yazi_etiketleri.’&exclude=-‘.$id);
$oneren_cikti =”;
foreach ($rastgeleyazi as $post) {
$fotover= get_post_meta($post->ID, ‘thumb’, true);
$oneren_cikti .='<a href="’. get_permalink($post->ID) .’" title="’. $post->post_title .’"><img src="’.$fotover.’" alt="’. $post->post_title .’" title="’. $post->post_title .’" />’. $post->post_title .'</a>’;
}
return $oneren_cikti;
}
[/php]

Buradaki;

[php]$fotover= get_post_meta($post->ID, ‘thumb’, true);[/php]

Satırı önemli. Yazılara resimleri özel alan ile iliştirdiğinizi var saydım. O halde buradaki thumb, özel alan adınız olmalıdır.

Peki koşul nedir? Öncelikle mevcut yazınızın etiketleri ve kategorileri alınır. Ardından benzer etiket ve kategorideki yazılar seçilir.

Fonksiyonun single.php dosyasına girilmesi

Şimdi bu fonksiyonu kullanabiliriz. Single.php açın ve WordPress Loop döngüsü arasında bu fonksiyonu arzuladığınız gibi kullanın. Aynen benim temadaki gibi çıktılar elde edeceksiniz.

[php]echo tema_benzer_yazilar();[/php]

WordPress için resimli benzer yazılar