it-swarm.asia

كيف أقوم بفتح عنوان URL خارجي في علامة تبويب جديدة؟

عندما أحاول وضع رابط مثل <a href="http://www.example.com/" target="_blank"> على مسار الارتباط ، تظهر لي رسالة الخطأ التالية:

المسار "//www.example.com/" target = "_ blank"> "إما غير صالح أو لا يمكنك الوصول إليه.

هل هناك طريقة لفتح عنوان URL الخارجي في علامة تبويب جديدة؟

5
jone

إذا كان بإمكانك استهداف علامة القائمة الخاصة بك باستخدام jquery باستخدام معرفها ، فيمكنك وضع شيء مثل هذا في ملف JS الذي ستضيفه في مظهرك عبر your_theme.info

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

أو يمكنك استخدام سمات القائمة الوحدة النمطية.

12
tostinni

ليس لكل عنصر قائمة. ومع ذلك ، يسمح المشروع روابط خارجية بفتح جميع الروابط الخارجية في نافذة جديدة ويشير إليها على هذا النحو برمز.

3
Berdir

المشكلة أنك تدخل <a href="http://www.example.com/" target="_blank"> ، عندما Drupal الرابط فقط (http://www.example.com، في حالتك).

إذا كنت ستدخل http://www.example.com ، Drupal أنه رابط خارجي ، وسيسمح لك باستخدامه.
حاولت إضافة رابط إلى drupal.org ، وكما ترون ، Drupal (هو الرابط المعروض على أنه "Drupal").

screenshot

بالنسبة إلى كيفية فتح الرابط في علامة تبويب متصفح جديدة ، توضح الإجابات الأخرى بالفعل كيفية القيام بذلك.

1
kiamlaluno

لقد تلقيت للتو هذه الإجابة من المجلس والتي كانت مساعدة كبيرة ، وقد يعمل هذا أيضًا بالنسبة لك:

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

في حالتي ، أشرت إلى فئة الصفحة ، ثم علامة "a" والتي جعلت الروابط في تلك الصفحة مفتوحة في نافذة جديدة. سأقوم بعمل تسلسل محدد أكثر قليلاً لأتمكن من تحديد القائمة المحددة في الشريط الجانبي بشكل أفضل.

0
user1176783

إذا كنت بحاجة إلى فتح جميع الروابط الخارجية في نافذة جديدة ، يمكنك إعادة كتابة روابط theme_ في روابطك الحالية ، إذا لم تكن تستخدم وحدة menu_attributes كما هو موضح أعلاه.

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

هناك مشروع يسمى " هدف القائمة " يسمح لك بالقيام بذلك. ربما يساعد ذلك أولئك الذين يحتاجون فقط إلى روابط قائمة فردية لفتحها في متصفح جديد.

0
hobbes_VT