Установить цель ссылки = _blank для модуля внешних ссылок - PullRequest
2 голосов
/ 25 марта 2011

Есть ли в Drupal модуль, который установит target = "_ blank" для всех внешних сайтов в

Ответы [ 4 ]

6 голосов
/ 25 марта 2011

Здесь есть модуль, который делает это в javascript, я думаю: http://drupal.org/project/extlink.

Я написал аналогичный модуль, который делает то же самое, что и входной фильтр Drupal.Он нигде не выпущен, но я рад поделиться им, если есть какая-либо причина, по которой у вас не работает javascript.

2 голосов
/ 25 марта 2011

Не уверен, что есть модуль Drupal, но это легко сделать с помощью jquery:

$("a[href^='http:']").attr('target', '_blank');
0 голосов
/ 09 октября 2015

Используйте шаблон для перезаписи форматирования.например, field - field-external-link - article.tpl.php для типа статьи и поля field-external-link.

См. $ Link_rendered.

<div class="<?php print $classes; ?>"<?php print $attributes; ?>>
  <?php if (!$label_hidden): ?>
    <div class="field-label"<?php print $title_attributes; ?>><?php print $label ?>:&nbsp;</div>
  <?php endif; ?>
  <div class="field-items"<?php print $content_attributes; ?>>
  <?php foreach ($items as $delta => $item): ?>
    <?php
     // Add target="_blank"
     $link_rendered =  preg_replace('/^<a/i', '<a target="_blank"', render($item));
    ?>
   <div class="field-item <?php print $delta % 2 ? 'odd' : 'even'; ?>"<?php print $item_attributes[$delta]; ?>><?php print $link_rendered; ?></div>
   <?php endforeach; ?>
 </div>

Нарушает оба правила а) редактировать xhtml с помощью регулярных выражений и б) редактировать в шаблоне, а не в хукеМожет быть изменен на вызов модуля и ловушки, но не увеличит возможность повторного использования.

0 голосов
/ 09 ноября 2013
Add some additional attributes for the menu link
Module name is: https://drupal.org/project/menu_attributes
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...