Ouvrir un lien du menu dans une nouvelle page

Bonjour,

Dans le champs «chemin» d’élément de mon menu j’ai une URL (http://unsite.com) que je souhaiterais ouvrir dans un nouvelle fenêtre.

Existe-il un astuce pour celà.

Merci

Jérôme

#

Pourquoi pas un peu de JavaScript non-obtrusif ?

window.onload = function() {
  document.getElementById('ton-lien').setAttribute('target', '_blank');
}

Bon, jte dis ça parce que je suis dans une phase JavaScript en ce moment, mais tu pourrais aussi utiliser la fonction _phptemplate_variables() dans template.php, parcourir tes liens de menu dans la variable $vars[‘primary_links’], et ajouter l’attribut target=»_blank» sur le lien approprié.

Vincent

Formations Drupal pour WEBMASTERS, DESIGNERS et DÉVELOPPEURS.

#

Ou la meme avec jQuery ;)

$(document).ready(function(){
   $("#ton-lien").attr("target", "_blank");
});

#

J’ai opté pour le javascript, ça marche bien.
J’ai tout de même dû modifier dans le fichier menu.inc la fonction menu_item_link($mid, $theme = TRUE) afin d’ajouter l’id du lien basé sur la dercription.

'attributes' => !empty($item['description']) ? array('id' => $item['description']) : array()

J’ai enfin inséré le javascript dans le fichier page.tpl.php

window.onload = function() {
document.getElementById(‘ton-lien’).setAttribute(‘target’, ‘_blank’) ;

}

En tout cas merci

j’essaierais le jquery

a+

Jérôme

#

Hum… Perso je pense que c pas une bonne soluce que de modifier menu.inc…
C’est sur que c pas facile vu que les menus de drupal n’ont pas d’id par defaut (si je ne me trompe pas) ceci dit, meme sans id tu peux t’y retrouver avec jQuery :

Supposons que ton menu pointe vers le node/10 tu peux utiliser le jQuery suivant :

$(document).ready(function(){
   $('p a[href*=node/10]').attr("target", "_blank");
});

Chui pas sur a 100% de ma syntaxe, mais ca vaut la peine de tester et de pas hacker le core…

http://docs.jquery.com/Tutorials:How_to_Get_Anything_You_Want

#

Je vais essayer comme tu indiques, je ne connais pas du tout jquery, ça a l’air bien puissant.
a+

Jérôme

#

Ca marche super bien,
j’ai trouvé ce qu’il me fallait ici.

Puis j’ai téléchargé le dernier jquery.

Merci de ton aide

Jérôme

Syndiquer le contenu