Wordpress günlüklerimizin yorum ve geri izleme özelliği vardır. Bu iki özellik de veritabanının yorumlar tablosunda (wp_comments) tutulurlar. Standart Wordpress temalarında her ikisi de normal yorum gibi görüntülenir. Oysa ki birisi başka bir siteden bizim sitemize gelen bir bağlantı, diğeri ise bir okuyucumuzun yazımız hakkında yapmış olduğu yorumdur. Doğal olarak bu ikisini ayırmak gerekir. Gelin bunu nasıl yapabileceğimizi görelim.
Kodları hap şeklinde vermek yerine önce ne yaptığımızı anlayalım. Mantık aslında oldukça basit. Konumuz olan tabloda (wp_comments) "comment_type" alanı vardır. Temamızın yorumlar kısmında (büyük ihtimalle comments.php dosyasındadır) yorum döngüsü içinde o an çekilen kaydın tipini alacağız ve geri izleme mi yoksa yorum mu kontrol edeceğiz. Sonrasında ise buna göre yorumu/geri izlemeyi görüntüleyeceğiz .
Standart bir Wordpress temasının yorum kısmındaki kodlar kabaca şu şekildedir. Kodları biraz temizledim. Sizin temanızdaki daha kalabalıktır ama mantığı anlayabilirsiniz.
<?php foreach ($comments as $comment) : ?>
...
...
<?php endforeach; ?>
<?php else : ?>
<?php endif; ?>
Bu kodlar üzerinde sizin için hazırladığım resimdeki değişiklikleri yapmalısınız. Değişikliği yaparken aşağıdaki kodlardan faydalanabilirsiniz. Gerekli değişikliği yaptıktan sonra kodunuzun son hali kabaca şöyle olacaktır.
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == 'comment') { ?>
...
...
<?php } else { $trackback = true; } ?>
<?php endforeach; ?>
<?php if ($trackback == true) { ?>
<h3>Geri izlemeler</h3>
<ul>
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'comment')
{ ?> <li><?php comment_author_link() ?></li><?php } ?>
<?php endforeach; ?>
</ul>
<?php } ?>
<?php else : ?>
<?php endif; ?>
Öncelikle ilk yorum döngümüzde eğer kayıt bir yorum ise
($comment_type == 'comment') göster anlamına gelen kodu yazdık. Eğer değilse $trackback isimli değişkene true değeri verdik. Bunun anlamı yorum dışında başka türlü kayıt olduğudur ki o da zaten geri izlemedir. Son olarak ikinci bir döngü oluşturduk ve bu döngüde sadece geri izlemeleri listeledik.
Kod anlatırken gerçekten çok zorlanıyorum çünkü karşımdaki kitlede hiç kod bilmeyen de var, biraz bilen de, uzman olan da. Ben kendime en az bileni kıstas olarak alıyorum ve o şekilde anlatmaya çalışıyorum. Bu yazımda değişiklikleri resim ile gösterdim. Umarım sizi çok fazla sıkmadan anlatabilmişimdir mevzuyu.
Yorumlarla gönlümü ferahlatmanız dileğiyle, hoşçakalın...
Sayfalar: [2] 1 » Hepsini Göster
Sayfalar: [2] 1 » Hepsini Göster

yakuter.com © 2006-2008 Erhan Yakut. Site tasarım fallendesign.
Site içerisindeki içerikler izinsiz kopyalanamaz, alıntı yapılamaz.
13 Hayalmeyal
10 Kasım 2008, 23:18
Çok sağol, sitemde uyguladım, ama sormak istediğim birşey var, yorumların başlığında geri izlemeleri de yorum olarak sayıyor, geri izlemeleri ayrı saydırmak için hangi kodu eklememiz lazım ?
Örenek:
Bu yazı için 2 yorum 3 geri izleme..
12 yakup
25 Eylül 2008, 16:00
“Kodları hap şeklinde vermek yerine önce ne yaptığımızı anlayalım. Mantık aslında oldukça basit.” ne güzel demişsin Erhan abi :-) Çok güldüm valla.
11 ozanTi
19 Eylül 2008, 21:27
sağol Erhan abi,ama ben daha önce bunu deneyip becerememiştim :) bir daha deneyeceğim sağol tekrar