Son çalıştığım projede, .NET altyapısına sahip bir web sitesinin mevcut tasarımını WordPress teması haline getirdik. Sonrasında da eski sitedeki içeriği yeni siteye aktarmak için bir çalışma yaptım. Her şey yolunda gidiyordu, ta ki bazı içerikleri el ile düzeltmem gerekene kadar. Bağlantılarda bir anda ortaya çıkan gizemli rel="noopener noreferrer"
kodu da neyin nesiydi?
Eski siteden aktarılan bir yazıdaki bağlantılar, siyah olması gerekirken garip bir şekilde bordo renkte gözüküyorlardı. Problemin nereden kaynaklandığını anlamak adına WordPress metin düzenleyicisini görsel moddan metin moduna geçirdim. Gereksiz çok fazla kod olduğunu gördüğümde en iyisinin görsel moddaki metni kopyalayıp, yalın metin olarak tekrar yapıştırmak olduğuna karar verdim. Üzerine tekrar gerekli biçimlendirmeleri yapmak ve bağlantıyı tekrar oluşturmak daha kolay olacaktı.
Biçimlendirmeleri bitirip, bağlantıyı oluşturdum. Daha önceden target="_blank"
özelliğine sahip olduğu için, yine hedef olarak _blank
seçtim. İşim bittiğinde kaynak kodlarının istediğim gibi olduğundan emin olmak için tekrar metin moduna döndüm. Neredeyse her şey istediğim gibi olmuştu. Neredeyse…
target="_blank"
özelliği verdiğim bağlantılarda fazladan bir rel
özelliği olduğunu fark ettim. Tam olarak şu şekildeydi;
rel=”noopener noreferrer”
Siteden dışarıya verilen bağlantılarda SEO önlemi olarak rel="nofollow"
verilmesine aşinayım fakat bu yeni değerler kafamı karıştırdı. Biraz araştırdığımda WordPress 4.7.4 sürümü ile beraber yeni sayfada açılan bağlantılara bu rel
değerlerinin eklendiğini öğrendim.
Genel olarak herkes bağlantılara bu özelliğin/değerlerin eklenmiş olmasından rahatsız ve eski haline geri döndürmek için ne yapılabildiğini sormuş. Kimi cevaplar da mevcut. Kullanıcılar genel olarak SEO açısından kötü bir etkisi olacağından endişeli bir şekilde bağlantıları nasıl eski haline getirebileceklerini araştırıyorlar. İşin ilginci, çözüm arayanlar garip bir şekilde bu değişikliğin neden yapıldığını hiç sorgulamıyorlar.
Bağlantıları nasıl eski haline getirebilirim?
Bağlantılarınıza eklenen bu özellikler SEO açısından herhangi bir kötü etkiye sahip olmamakla beraber güvenlik için bağlantılarınızda bulunması önem arz ediyor. SEO etkisine birazdan değineceğim.
Şahsen bu özellikleri kaldırmanızı önermiyorum. Fakat bilmediğim, kendinize ait sebepleriniz olabilir. Dolayısıyla bağlantılarınızı nasıl eski haline getirebileceğinizi aşağıda anlatıyorum. Sitenizin/blogunuzun güvenliğini önemsiyorsanız yapmamanızı da şiddetle öneriyorum.
Bu özellikleri kaldırmak için aşağıdaki kod parçasını temanızın ya da alt temanızın functions.php
dosyasına eklemeniz yeterli. Bu işlemi yapmadan önce functions.php
dosyanızın bir yedeğini almanızı öneririm.
add_filter( 'tiny_mce_before_init', 'guvensiz_baglanti_hedeflerine_izin_ver' );
function guvensiz_baglanti_hedeflerine_izin_ver( $tinymce_init ) {
$tinymce_init['allow_unsafe_link_target'] = true;
return $tinymce_init;
}
Peki neden bağlantılara bu özellikler ekleniyor?
Aslında bir güvenlik önlemi olarak bu özellikler ekleniyor. Bir web sayfasında target="_blank"
özelliğine sahip bağlantılara tıkladığınızda ya da bir bağlantı window.open()
ile açıldığında, bağlantı, bulunduğunuz sekmede/sayfada değil, otomatik olarak yeni bir sayfada açılır. Açılan bu yeni sayfa, kendisini açan sayfanın bazı bilgilerine erişebilir ve kısmi olarak kontrol edebilir. Bu da potansiyel olarak bir güvenlik açığı oluşturuyor.
noopener
özelliği tarayıcıya yeni açılan sayfanın kendisini açan sayfaya ait değişkeni sıfırlamasını bildiriyor. Bu sayede açılan yeni sayfa, önceki sayfa hakkında bilgi sahibi olamıyor.
Benzer şekilde noreferrer
özelliği de, yeni açılan sayfanın referer
değerinin sıfırlanmasını sağlayarak, yeni sayfanın bir önceki sayfanın adres bilgisine ulaşmasını engelliyor.
Bağlantılara rel="noopener noreferrer
eklenmesinin SEO üzerindeki etkisi
Daha önce de söylediğim gibi, SEO açısından bu değerlerin herhangi bir etkisi bulunmuyor. Bana inanmıyorsanız Reddit’te sorulan soruya Google çalışanı John Mueller’in verdiği cevaba bakın;
“Evet,” diyor, “Bu sadece bir bağlantı.”
Bitirirken
WordPress, bir bağlantının hedef özelliğini yeni sayfada açılsın şeklinde değiştirdiğinizde bu rel
değerini otomatik olarak ekliyor. Endişe edecek bir durum yok, hatta eklenmemesi endişe etmeniz gereken bir durum. Yazıda bahsettiğim yönteme alternatif olarak yazılarınızın hedefini aynı sayfa olarak da belirleyebilirsiniz. Hem kullanıcı deneyimi açısından da daha doğru bir yöntem olacaktır.
WordPress konusunda destek ihtiyacınız varsa Ada’nın özel çözümlerine başvurabilirsiniz.
Daha önce Github’da TinyMce’ye bu yönde istekler gelmiş ve 4.5.0’da bu “allow_unsafe_link_target” seçeneğini eklemişler…