Spiga

Wordpress: Yorumlardaki linkleri gizleyebilirsiniz


Özellikle webmaster forumlarının artması ve SEO konusunda olur olmaz "do follow linkler" başlıkları yüzünden blog sahipleri istenmeyen durumlarla yüzyüze kalabiliyor. Konu ile alakasız fakat isim bölümüne anahtar kelime yazılmış bir yığın linkle her gün karşılaşmanın hiç hoş bir durum olmadığı konusunda hemfikir olduğumuza inanıyorum.

Wordpress kullanılan sitelerde yorumlardaki "Web Site" alanlarının inaktif edilmesi konusunda iki seçeneği yazacağım. İlk yöntemde ziyaretçilerin Web Site alanını doldurmasına izin veriyoruz. Fakat yorumlar ekrana basılırken bu adresler görüntülenmiyor. Amacımız dışında olsa da, anahtar kelimelerle dolu bir yorum sayfanız olacaktır.

İkinci yöntemde ise, yorum formundan "Web site" satırını kaldırıyoruz. Böylece sadece isim ve e-mail bilgileri isteyerek yorumları kaydediyoruz. Siteniz için uygun olan çözümü kullanabilirsiniz.

Yorumlarda web site alanının kaldırılmasına dair 1. yöntem:

- Wp-includes dizinine girerek comment-template.php dosyasını açın.

- get_comment_author_link() fonksiyonunu bulun.

function get_comment_author_link() {

/** @todo Only call these functions when they are needed. Include in if... else blocks */
$url = get_comment_author_url();
$author = get_comment_author();

if ( empty( $url ) || 'http://' == $url )
$return = $author;
else
$return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";
return apply_filters('get_comment_author_link', $return);
}

- Fonksiyonun orjinalini bir yere not alarak aşağıdaki değişikliği yapın.

$return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";
satırı silerek yerine,

$return = $author;

satırını ekleyin.

Yorumlarda web sitelerine linkler iptal edilmiş olacaktır.

Yorumlarda web site alanının kaldırılmasına dair 2. yöntem:

İkinci yöntemde yorum formundan Web site alanını kaldırıyoruz. Bunun için kullanıdığınız tema ve default temadaki comments.php ve comments-popup.php dosyalarını açarak formlardaki URL satırlarını silin. Temaya göre değişiklik gösterse de, kodlar aşağıdakine benzer olacaktır.

<p><input type="text" name="url" id="url" value="<?php echo $comment_author_url; ?>" size="22" tabindex="3" />
<label for="url"><small>Website</small></label></p>


Bu işlemi kod silmeden yapmak isterseniz, silinmesi gereken kodun başına <!-- ve sonuna --> ekleyerek gerçekleştirebilirsiniz.

Yazının Devamı..

Iyinet.com satışı ve yankıları

İyinet.com sitesini birkaç yıl önce Turkwm.com'un yazarları sayesinde tanıdım. O gün bugündür çok sık olmasa da takip ettiğim iki Türk forumundan biridir. İyinet forumlarında belirli bir durgunluk var. Fakat forumu ve siteyi bilen insanlarla yaptığım konuşmalardan ötürü tracker'ın stabil bir sistem olduğundan haberim var.

Açıkçası satış haberini aldığımda biri Turkwm'den olmak üzere 3 arkadaşımla görüştüm. Fakat konuda telaffuz edilen rakamları karşılayamayacağımız için dışardan izlemek durumunda kaldık. Talip olma nedenimiz ise öncelikli olarak tracker sistemi ve iyi.net domaini idi.

Diğer platformlarda da bu satışın yankıları sürdü. Görüldü ki, satış başlığı iyinet'den daha çok sayfalara erişen yerler oldu. Çoğu satış konusundan çok bastırılmış öfkenin dışa vurulması tadında mesajlardı. Dolayısıyla amacın üzüm yemek değil bağcıyı dövmek olduğunu görmek zor değildi.

Google Reader vasıtasıyla takip ettiğim düzeyli ve kaliteli bir site olan Webrazzi'de bugün konuyla alakalı bir yazıya rastladım. Bana göre, Arda Kutsal bu sektörü en iyi analiz eden insanlardan birisidir. Görünen o ki, bu yazıyı yazmadan önce fikir aldığı kaynaklar yukarıda bahsettiğim, ve büyük ihtimalle zamanında iyinetten atılmış kişilerden oluşuyor. Aksi durumda Webrazzinin bu konseptte bir yazı yazması olağan değil. Ve şu an gördüğüm kadarıyla Webrazzideki başlık iyinet forumlarında tartışılmaya başlanmış.

Diğer açıdan düşündüğümüzde, Webrazzi'nin bu satışı haber yapma zorunluluğu bulunmamaktadır. Fakat konunun öznesi konumuna gelen maili benim göndermediğimi kim ispat edebilir? Arda Kutsal iyinetin sahibi yada yöneticileri ile görüşmeli diye düşünüyorum.

Yazının Devamı..

Wordpress: 30 günden eski konuları yoruma kapatmak

Bazen eski konuları otomatik olarak yoruma kapatmak faydalı olabilir. Özellikle yorum sayfalarında kirliliğe sebep olan "link canavarları"na engel olmak yada vaktinizi harcamamak için bu fonksiyonu kullanabilirsiniz.

30 günden eski konuları nasıl yoruma kapatırım?

Yorumları otomatik olarak etkisiz hale getirmek için functions.php dosyanızı açarak, aşağıdaki kodları ekleyin.

<?php
function yorum_kapat( $posts ) {
if ( !is_single() ) { return $posts; }
if ( time() - strtotime( $posts[0]->post_date_gmt ) > (
30 * 24 * 60 * 60 ) ) {
$posts[0]->comment_status = 'closed';
$posts[0]->ping_status = 'closed';
}
return $posts;
}
add_filter( 'the_posts', 'yorum_kapat' );
?>


Üçüncü satırdaki 30 değerini değiştirerek süreyi uzatıp, kısaltabilirsiniz.

Yazının Devamı..

Wordpress: Yeni yazıları WP olmayan sitede göstermek

Bu işlemi aynı reseller hesabında yada aynı makinada bulunan domainleriniz için hoş bir arayüz olarak kullanabilirsiniz. RSS sayfasındakileri parse ederek aynı verilere kavuşabilirsiniz fakat bu daha basit bir çözümdür.

Wordpress harici bir sitede yeni yazılar nasıl yayınlanır?

Öncelikle wp-config.php dosyanızın yolunu(path) bilmeniz gerekir. Örnek olarak bu işlemde kullanılacak iki sitenin durumunu ağaç şeklinde görelim. İlk sitemiz wordpress.turkwm.com ve ikinci sitemizde php.turkwm.com olsun.

İlk Site,
/var/www/wordpress.turkwm.com

İkinci Site,
/var/www/php.turkwm.com

Bu örneğe göre wp-config dosyasının yolu /var/www/wordpress.turkwm.com/wp-config.php olarak öngörülür. Öyleyse ikinci sitede çalıştıracağımız kod içinde konfigürasyon dosyasını çağırmak için "../wordpress.turkwm.com/wp-config.php" olacaktır.

Bu uzun işlemle uğraşmak istemiyorsanız, aynı makina (ya da aynı reseller) üzerindeki wp sitenizin config dosyasını, son yazıları göstermek istediğiniz siteye kopyalayabilirsiniz.

Son olarak, aşağıdaki kodu diğer sitenizde kullanarak son mesajları gösterebilirsiniz.

<?php
$kac_tane=1; //Kaç yazı gösterilecek?
require('../wp-sitemiz/wp-config.php'); // Wp-config dosyasının yolu.
$yazilar=$wpdb->get_results("SELECT 'ID','post_title','post_content' FROM $wpdb->posts
WHERE 'post_type'=\"post\" AND 'post_status'=\"publish\" ORDER BY post_date DESC LIMIT $kac_tane");

foreach($yazilar as $yz){
printf ("<div class='normalText'>%s</div>", $yz->post_content);
}?>


Yazının Devamı..

Wordpress: Her kategori için ayrı RSS feed oluşturmak

Bir çok kategoriden oluşan sitelerin takipçileri için tüm mesajların yayınlandığı site RSS'i sıkıcı olabilir. Örnek olarak bir çok yabancı forumu sadece belirli kategorileri için RSS abonesi olarak takip etmek işlerimi kolaylaştırıyor. Sizde WP bloğunuzda ziyaretçilerinize böyle bir imkan sunmak ister misiniz?

Her kategori için ayrı RSS nasıl oluşturulur?

Bunun için ek birşey yapmamıza gerek yok. WP aslında bunu standart olarak sunuyor. Örneğin blogumuzda oyunlar kategorisi varsa;

http://www.turkwm.com/kategori/oyunlar

şeklinde bir adresi olacaktır. Bu kategorinin RSS linki ise sonuna feed eklenerek aşağıdaki gibi olacak,

http://www.turkwm.com/kategori/oyunlar/feed

Bunu temanızda otomatik link olarak göstermek isterseniz aşağıdaki kodu temanızda görüntülenmesini istediğiniz alana ekleyebilirsiniz.

<a href="<?php echo get_the_category().'/feed'; ?>"><?php echo get_the_category().' Rss Takibi'; ?></a>

Yazının Devamı..

Wordpress: Yorumculara Isimleri ile hoşgeldin mesajı nasıl verilir?


Ziyaretçilerinize isimleri ile hitap etmek ister miydiniz? Wordpress'in yorum yapan kullanıcılara cookie(çerez) yüklediği için , sitemize yorum yapan kullanıcılar cookieleri temizlemediği sürece, cookie kontrolü yaparak tanıyabiliriz.

Yorumcularımıza özel hoşgeldin mesajını nasıl oluşturabiliriz?

Göreceğiniz gibi hiçte zor değil, aşağıdaki kodu temanızda dilediğiniz yere yapıştırın.

<?php
if(isset($_COOKIE['comment_author_'.COOKIEHASH])) {
$yorumcu = $_COOKIE['comment_author_'.COOKIEHASH];
echo "Hoşgeldin ". $yorumcu ."!";
} else {
echo "Hoşgeldin Ziyaretçi!";
}
?>


Öncelikle kullanıcıda cookie'miz var mı onu kontrol ediyoruz. Eğer cookie mevcutsa ekrana yorumcunun ismi ile hoşgeldin mesajı yazılıyor. Cookie yoksa, Ziyaretçi olarak selamlanıyor.

Yazının Devamı..

Wordpress: Adminleri istatistiklerde göstermemek



Özellikle birden fazla yöneticisi olan siteler için, yöneticilerin gün boyu sitede olmasından dolayı sağlıklı istatistikler alınamayabilir. Hit sayısıda çok fazla değilse, ziyaretçi eğilimlerini takip etmek isteyen site sahibini yanılgıya sokar.

WP'nin sunduğu bir fonksiyon ile başta Google Analytics olmak üzere, WP Adminlerinin sitedeki faaliyetlerini takip etmesini istemediğiniz tüm istatistik ve sayaç (ve toplist) kodlarını gizleyebilirsiniz. Dolayısı ile adminlerin gezdiği sayfalarda bu kodlar işleme konulmaz.

Peki nasıl olacak?

current_user_can fonksiyonu ile kullanıcının level'ini kontrol edip, level_10 (admin) değilse kodları yayına verebilirsiniz.

<?php
if (!current_user_can('level_10')){ ?>
Sayaç kodlarını bu alana yazabilirsiniz.
<?php } ?>


Bu işlemi reklam gösterimleri içinde yapabilirsiniz. Level kontrolu yaparak reklamları adminlerden yada ayrıcalık kullanıcılardan saklayabilirsiniz.

Yazının Devamı..

Wordpress: Reklamları sadece aramalardan gelen ziyaretçilere göstermek



Sitenizdeki reklamları tıklayanların büyük bir çoğunluğu arama motorundan gelen ziyaretçilerdir. Aradıkları kelimelerle alakalı bir sayfanıza geldikleri için, yine aradıkları kelimeyle alakalı reklamlar gördüklerinde tıklama ihtimalleri yüksek oluyor. Google'ın "Smart Pricing" mantığına göre tık başı ücret normale göre fazla olabiliyor.

Reklamları arama motorundan gelen ziyaretçilere göstermek için öncelikle functions.php dosyanıza aşağıdaki fonksiyonu ekleyin.

function arama_ziyaretcisi(){
$ref = $_SERVER['HTTP_REFERER'];
$ar_zi = array('/search?', 'images.google.', 'arama.mynet.com', 'search.', 'realist.', 'bing.com', '/search/', '.yahoo.');
foreach ($ar_zi as $kaynak) {
if (strpos($ref,$kaynak)!==false) return true;
}
return false;
}


$ar_zi dizi değişken olarak arama motorlarını barındırmaktadır. Size ziyaretçi gönderen diğer arama motoru, dizin yada toplist adreslerini de rahatlıkla ekleyebilirsiniz.

Wordpress içindeki kullanımı da oldukça basittir. Adsense yada kullandığınız diğer reklam kodlarının görüntülenmesini istediğiniz yere aşağıdaki php kodunu yapıştırın.

<?
if (function_exists('arama_ziyaretcisi')) {
if (arama_ziyaretcisi()) {
Reklam kodlarınızı buraya ekleyin.
}
}
?>


Yazının Devamı..

Wordpress: Yazının güncellenme tarihini göstermek



Özellikle sınav sonuçları, futbol maçları, site/forum toplantıları, buluşma gibi ileri tarihteki bir konuda yazı yazdığınızda , belirtilen günden sonra konuyu güncellediğinizde, yazının yazıldığı tarihe ek olarak, güncellenme tarihinin görüntülenmesini de isteyebilirsiniz.

Bu işlem için öncelikle index.php ve single.php dosyalarında aşağıdaki kodu bulun.

Gönderim Tarihi: <?php the_time('F jS, Y') ?> (the_time parametreleri ve Türkçe kısım değişik olabilir.)

Aşağıdaki kod ile değiştirin;

Gönderim Tarihi: <?php the_time('F jS, Y') ?>
<?php $guncelleme = get_the_time('U');
$guncelleme_zamani = get_the_modified_time('U');
if ($guncelleme != $guncelleme_zamani) {
echo " Güncelleme: ";
the_modified_time('F jS, Y');
echo ". ";
} ?>


Yazının Devamı..

Wordpress: Sorgu sayısı ve sayfa yükleme süresini göstermek



Bazı sitelerde sayfa yüklenme süresini ve kullanılan sql sorgu sayısını görmüşsünüzdür. Wordpress'inizin de bu bilgileri verebileceğini biliyor muydunuz?

Bu bilgileri görmek için kullandığınız temanın footer.php dosyasına aşağıdaki kodları ekleyin.

Sorgu Sayısı: <?=get_num_queries();?>
Yüklenme Süresi: <?=timer_stop(1);?>


Yazının Devamı..

Ubuntu: Netbeans'i kaldırmak (uninstall)

Ubuntu üstünde PHP IDE arayışlarım sırasında Netbeans'i kurdum. Aslen Java kodlamak için kullanılan bu programın PHP eklentisi sayesinde bende kullanmayı düşündüm. Fakat Zend Studio'dan alışageldiğim birçok şeyi veremedi.

Apt kütüphanesini kullanarak kurmadığım için kaldırma sırasında sorun yaşadım. Paket yöneticisi yardımcı olamadığı için google'da aramaya başladım. Internette aradığım birçok kaynak eski versiyonlarındaki uninstall yöntemlerini anlatıyordu.

Durumu komedi haline sokan bilgi ise Sun'in kendi yardım sayfalarındaki yazılarıydı. Windows için hem programı kaldırma hem de servisleri iptal etmek için bilgi verilirken, Linux ve Solaris için kurulum ekranını kullanarak Netbeans'in sundugu servisleri durdurma imkanı verildiğini yazıyordu.

Sonuç olarak, eğerki default ayarlarla Netbeans 6.7.1 kurarsanız ve kaldırma gereksinimi hissederseniz, uninstall dosyasının yolu aşağıdaki gibidir.

/usr/local/netbeans-6.7.1/uninstall.sh

Yazının Devamı..

wget ile rapidshare'dan dosya indirmek



Sunucu sahipleri için yüksek hızlı dosya indirmek standart bir işlemdir. Fakat rapidshare gibi üyelik isteyen sistemlerden konsol kullanarak download yapmak gerektiğinde bazı sıkıntılar söz konusu olabiliyor.

Linux sistemlerde sunucu dışındaki dosyaları indirmek için wget komutu kullanılır. wget'in load-cookies parametresi kullanılarak Rapidshare'daki premium hesabınız üzerinden download yapabilirsiniz. İlk işlem olarak rapidshare premium hesabınıza giriş yaptığınızda oluşturulan cookie'leri load-cookies parametresi ile yüklemek gerekiyor. Cookie'lerinizin hepsini bir dosya içine alarak txt formatında size sunacak olan firefox eklentisini kurun.

Elde edeceğiniz cookies dosyasını ssh ile komutu calıştıracağınız dizine yükledikten sonra aşağıdaki örnekte olduğu gibi indirme işlemini başlatabilirsiniz.

wget --load-cookies=cookies.txt http://rapidshare.com/files/229487361/turkwm.rar.html

Yazının Devamı..

Yorum yazılabilecek Wordpress blogları bulmak

Birçok webmaster arkadaş sitelerine backlink sağlamak için yorum ekleyebileceği web sitelerini aramaktadır. Arama motorlarında yükselmek için izlenmesi gereken yöntemlerin en önemlilerinden biri backlink olduğu için herkes bu yönde değişik yöntemler geliştirmektedir.

Daha önce yazdığım bir blog yazısında .edu uzantılı linklerin bulunmasını anlatmıştım. Hatta bunu servis olarak sunan ufak bir kodda yazıp hizmete almıştım. Fakat art niyetli kullanımlar sebebiyle kaldırmıştım.

Şimdi anlatacağım yöntem yorumlarda gravatar'daki resmin gösterilmesini sağlayan blogları bulmaya yarıyor. Sonuç sayfasında çıkan siteleri ziyaret ederek yorum bırakabilirsiniz.

Google sonuç sayfası

Yazının Devamı..

 
Turkwm.com yazılarını günlük olarak almak ister misiniz? Email aboneliği için lütfen tıklayın.