Kategoriler
WordPress

WordPress yorumlarda linkleri devre dışı bırakmak

WordPress sitesini yorumlar bölümündeki tüm linkleri iptal etmek hakkında bilgi. Eklentisiz.

WordPress yorumlar kısmında bağlantıları nasıl devre dışı bırakacağınız ve yorum yazarı bağlantısını nasıl kaldıracağınız bu sayfada açıklanmıştır. Bu sitenizin yorum bölümünü spam’den uzak tutacaktır.

Daha önce paylaşmış olduğum tarifi genişlettim ve daha iyisini burada paylaştım, bu konu SEO için de önemli.

Yorumlardan linkleri temizlemek (WordPress) – WordPress sitenize eklenen yorumların içerisinde bulunan linklerin temizlenmesi için bir fonksiyon.

WordPress yorumlar bölümünde 2 link türü var, 1- yorum içeriğinde yazılan linkler 2- yorum yapan yorumcunun author_url olarak geçen websitesi alanı. Bu alanları iptal edebilir ve sitenizde görünmemesini sağlayabilirsiniz, şöyle; yorum içeriğinde yazılan URL’lerin otomatik olarak bağlantıya dönüşmesini iptal etmek, var olan URL’leri normal metne çevirmek ve yorumcunun yorum yaparken doldurduğu “websitem” alanını iptal etmek ve sadece isminin görünmesini sağlamak.

1- Yorumlarda otomatik link devre dışı bırakmak

İnsanlar genellikle yorumlarda web sitesi URL’lerini olduğu gibi yazarlar. WordPress bunları burada gösterildiği gibi otomatik olarak bağlantılara dönüştürür, bunu iptal etmek için aşağıdaki kod parçacığını kullanabilirsiniz:

remove_filter('comment_text', 'make_clickable', 9);

Bu basit değişiklik, WordPress’in yorumlar bölümünüzdeki metin URL’lerinden otomatik olarak bağlantılar oluşturmasını engelleyecektir.

Yukarıdaki kod, WordPress yorumlarında otomatik bağlantı kurmayı engellese de HTML bağlantı etiketlerini durdurmaz.

2- WordPress yorumlarında <a> etiketlerine izin vermemek

Bazı kişiler URL oluşturmak için yalnızca bir URL yapıştırmak yerine akıllıca bir HTML bağlantı etiketi kullanır. İşte bir örnek:

<a href='https://somewebsite.com/'>Bu bir bağlantıdır</a>

WordPress yorumlarında otomatik bağlamayı devre dışı bırakmış olsak bile tarayıcı bu HTML’yi bir bağlantıya dönüştürecektir. Bunu önlemek için ilk kod parçasını yerleştirdiğiniz bölüme aşağıdakileri de ekleyin:

function remove_links( $comment_text){
    $allowed_html = array(
	'br'     => array(),
	'em'     => array(),
	'strong' => array()
	);
	$content = wp_kses($comment_text, $allowed_html);
    return $content;
}
add_filter( 'get_comment_text', 'remove_links', 2);

Yukarıdaki kod yorum metnini tarayacak ve ziyaretçilerin yalnızca <br>, <em> ve <strong> etiketlerini kullanmasına izin verecektir. Diğer etiketleri filtreleyecektir. 1. ve 2. bölümdeki kodla WordPress yorumlarındaki tüm bağlantıları devre dışı bırakacaksınız.

Benim şahsen kullandığım kod ek olarak yorumlarda görsellere de izin veriyorun onun için $allowed_html içerisine; 'src'=>array(),'alt'=>array(),'width'=>array(),'height'=>array(), şeklinde bir ekleme yaptım, benim kod tam olarak şöyle:

remove_filter( 'comment_text', 'make_clickable' ,9 );
add_filter(
    'get_comment_text',
    function ($comment_text){
        $allowed_html = array(
            'br' => array(),
            'em' => array(),
            'strong' => array(),
            'img' => array(
                'title' => array(),
                'src' => array(),
                'alt' => array(),
                'width' => array(),
                'height' => array(),
            ),
        );
        $content = wp_kses($comment_text, $allowed_html);
        return $content;
   },
    2
);

Artık son bir adım kaldı.

3- WordPress’teki yorum yazarı bağlantısını kaldırmak

Ziyaretçilerinizin yorum bölümünde bağlantı oluşturma yeteneğini tamamen ortadan kaldırmak istiyorsanız o zaman WordPress yorum yazarı bağlantı alanını da kaldırmalısınız. WordPress varsayılan olarak ziyaretçinizden üç bilgi ister(ekstra alan da eklenebilir):

  1. İsim
  2. E-posta
  3. Web Sitesi URL’si

WordPress üçüncü bilgi parçasını bir bağlantıya dönüştürür. Bu bir “nofollow” bağlantısı olmasına rağmen, birçok spam gönderici bunu web sitelerine düşük kaliteli bağlantılar göndermek için kullanır. Aşağıdaki kodu WordPress’e ekleyerek üçüncü bilgiyi kaldırabilirsiniz:

add_filter('comment_form_field_url', '__return_false');

Ben özellikle 1 ve 2. maddenin yapılması taraftarıyım ve yorum kısmının komple iptal edilmesi yerine Cloudflare kullanarak spam’ın engellenmesini sağlanmasını tavsiye ederim.

Hepsi bu kadar, kolay gelsin.

Kaynaklar: