it-swarm-tr.com

Harici bir URL'yi yeni bir sekmede nasıl açabilirim?

Bağlantı yoluna <a href="http://www.example.com/" target="_blank"> Gibi bir bağlantı koymaya çalıştığımda, aşağıdaki hata iletisini alıyorum:

'//Www.example.com/ "target =" _ blank ">' yolu geçersiz veya buna erişiminiz yok.

Harici URL'nin yeni bir sekmede açılmasının bir yolu var mı?

5
jone

Menü etiketinizi kimliğini kullanarak jquery ile hedefleyebiliyorsanız, temanıza your_theme.info aracılığıyla ekleyeceğiniz bir JS dosyasına böyle bir şey koyabilirsiniz.

Drupal.behaviors.externalMenu = function(context, settings) {
    $('#menu_id').attr('target', '_blank');
};

Veya Menü özellikleri modülünü kullanabilirsiniz.

12
tostinni

Menü öğesi başına değil. Ancak, Dış bağlantılar projesi tüm dış bağlantıları yeni bir pencerede açmaya izin verir ve bunları bir simgeyle gösterir.

3
Berdir

Sorun <a href="http://www.example.com/" target="_blank">, Drupal yalnızca bağlantıyı bekliyorsa (http://www.example.com, Senin durumunda).

http://www.example.com, Drupal bunun harici bir bağlantı olduğunu fark eder ve onu kullanmanıza izin verir.
Drupal.org'a bir bağlantı eklemeye çalıştım ve gördüğünüz gibi Drupal kabul etti ("Drupal" olarak gösterilen bağlantı)).

screenshot

Bağlantının yeni bir tarayıcı sekmesinde nasıl açılacağı konusunda, diğer yanıtlar bunun nasıl yapılacağını zaten açıklar.

1
kiamlaluno

Bu yanıtı büyük bir yardım olan tahtadan aldım, bu sizin için de işe yarayabilir:

(function($){
  $(document).ready(function(){
    $('.page-node-166 a').attr('target', '_blank');
  });
})(jQuery);

benim durumumda, ben sayfa sınıfı, sonra 'a' başvuru ve bu sayfadaki bağlantıları yeni pencerede açık yaptı. Kenar çubuğundaki belirli menüyü daha iyi belirleyebileceğim biraz daha seçici zincirleme yapacağım.

0
user1176783

Tüm harici bağlantıları yeni bir pencerede açmanız gerekiyorsa, yukarıda belirtildiği gibi menü özellikleri modülünü kullanmıyorsanız mevcut temanızdaki tema bağlantılarını yeniden yazabilirsiniz.

function yourtheme_name_link($variables) {
  // Add target blank to all external links.
  if (url_is_external($variables['path'])) {
    $variables['options']['attributes']['target'] = '_blank';
  }
  return '<a href="' . check_plain(url($variables['path'], $variables['options'])) . '"' . drupal_attributes($variables['options']['attributes']) . '>' . ($variables['options']['html'] ? $variables['text'] : check_plain($variables['text'])) . '</a>';
}
0
Bogdan Tur

Bunu yapmanıza izin veren " Menü Hedefi " adlı bir proje var. Belki de sadece bireysel menü bağlantılarına ihtiyaç duyanlara yeni bir tarayıcıda açılmasına yardımcı olur.

0
hobbes_VT