Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 14/03/2011 13:06:34

bqui
Guest
From: Nîmes
Registered: 17/11/2010
Posts: 132

Lien externe dans une nouvelle fenètre

Bonjour,

Il me semblait que c'était le comportement par défaut alors soit je me trompe soit j'ai changé quelque chose mais les liens vers les sites web externe ne s'ouvre pas dans un nouvel onglet.

Est il possible de modifier ce comportement ?

Merci,
Cordialement.

Offline

#2 14/03/2011 15:03:06

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Lien externe dans une nouvelle fenètre

Bonjour,
Avant, l'option n'existait pas dans le CMS et c'est donc la charte qui décidait de ce quelle faisait. Le comportement le plus courant étant d'ouvrir dans une nouvelle fenêtre lors de liens "externes".
Aujourd'hui, l'option existe et par défaut n'ouvre pas une nouvelle fenêtre. La charte peut si elle veut ne pas tenir compte du paramètre, mais ce n'est pas conseillé !!!
Demain, il serait possible de faire que les liens externes aient cette option cochée par défaut. Je vous invite à ouvrir une demande d'amélioration dans JIRA. L'idée me paraît bonne.


Raphael Franchet
Expert Ametys

Offline

#3 14/03/2011 15:36:14

bqui
Guest
From: Nîmes
Registered: 17/11/2010
Posts: 132

Re: Lien externe dans une nouvelle fenètre

Bonjour,

Merci pour cette réponse, je vais faire une demande d'amélioration.

Autre cas de figure : j'ai une page de redirection étiquetée "Accès direct" ; est il possible que le lien en Accès direct s'ouvre dans une nouvelle fenêtre ?

Cordialement.

Offline

#4 14/03/2011 15:43:09

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Lien externe dans une nouvelle fenètre

Dans ce deuxième cas de figure, ça sera une page "interne" donc pas cochée par défaut... il faudra la cocher à la main


Raphael Franchet
Expert Ametys

Offline

#5 14/03/2011 16:08:18

bqui
Guest
From: Nîmes
Registered: 17/11/2010
Posts: 132

Re: Lien externe dans une nouvelle fenètre

Aujourd'hui, je n'ai pas l'option pour ouvrir cette page dans une nouvelle fenêtre : ce n'est pas un lien que je crée manuellement.

Il s'agit d'une remontée automatique de contenu (prévue dans le template de base) nommé access-direct.

Ma question est donc de savoir comment faire en sorte qu'un de ces accès direct s'ouvre dans une nouvelle fenêtre ?

Merci.

Offline

#6 14/03/2011 19:38:56

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Lien externe dans une nouvelle fenètre

D'accord, tout ce que je dis précédemment réfère à l'insertion de liens dans l'éditeur en ligne.
Pour la remontée de contenus, il faut surcharger le rendu et ajouter les target="blank".

<Apparté>
target="blank" n'est pas correct en xhtml strict.
la solution utilisée un peu partout dans le CMS est de mettre un onclick="window.open(this.href); return false;".
cela ouvre une nouvelle fenêtre uniquement quand js est activé, et sinon le lien fonctionne normalement.

    <Apparté>
         Pour que l'ouverture respecte l'accessibilité, il faut penser à préciser (dans le libellé ou le titre) que le lien va ouvrir une nouvelle fenêtre
    </Apparté>
</Apparté>


Raphael Franchet
Expert Ametys

Offline

#7 22/01/2014 11:21:23

Mathias
Guest
Registered: 18/12/2013
Posts: 11

Re: Lien externe dans une nouvelle fenètre

Bonjour,
je suis un peu confronté au même pb :

j'ai un item du menu principal qui est en fait une redirection vers un site externe et j'aimerais que seul celui-ci s'ouvre dans un nouvel onglet afin que le visiteur ne quitte pas mon site mais je ne trouve pas.. roll
Je suis en version Ametys 4.3.1
Pouvez-vous m'aider?

D'avance merci

Offline

#8 22/01/2014 13:51:30

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Lien externe dans une nouvelle fenètre

Bonjour,

Vous êtes dans un cas différent du cas évoqué ci-dessus : en effet, le problème d'un lien de menu est qu'il est créé par la charte graphique.
Vous allez donc devoir mettre les mains dans le cambouis pour modifier ce comportement.

En 1er, il faut voir comment votre menu traite les liens externes. Soit il crée le menu uniquement à base de liens internes, puis lorsque ce lien est appelé le cms fait la redirection ; soit le menu fait directement le lien vers la page finale. C'est facile à voir, quand vous laissez la souris au dessus du lien, l'url du lien s'affiche dans la barre d'état du navigateur.

Si le menu fait le lien directement, c'est facile.
Si le menu fait un lien interne (qui sera redirigé vers le site externe final), il faut commencer par modifier ce comportement, pour rentrer dans le premier cas.

Dans quelle situation êtes-vous ?


Raphael Franchet
Expert Ametys

Offline

#9 22/01/2014 14:45:38

Mathias
Guest
Registered: 18/12/2013
Posts: 11

Re: Lien externe dans une nouvelle fenètre

Bonjour et merci !
je suis dans la situation 2
je vais tâcher d'y voir plus clair..

Offline

#10 22/01/2014 15:36:50

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Lien externe dans une nouvelle fenètre

Si vous êtes dans le cas n°2, il faut
1) retrouver le code XSL qui construit le menu (à partir de l'inputdata sitemap)
2) ajouter une règle qui testes si la page est de type redirection, pour mettre l'url finale directement dans le lien
Là vous êtes dans le cas n°1
3) dans le cas de la redirection, tester si elle est interne ou externe pour ajouter un attribut target sur le lien

Actuellement le menu doit ressemble à ce qu'on trouve dans la démo, à savoir

<a href="{$site-uri-prefix}/{$lang}/{@sitemap:path}.html">

Vous aurez accès au XML d'entrée de l'inputdata en ajoutant ?cocoon-view=content lorsque vous êtes en preview.
Par exemple  (admin/admin)
vous y trouverez un

sitemap:type="LINK" sitemap:link="page://00f31ce9-d37d-4792-9520-20549e73152d" sitemap:link-type="PAGE"

où l'on voit que c'est une page de redirection (sitemap:type="LINK") qui renvoie vers une page interne (sitemap:link-type="PAGE") avec tel identifiant (sitemap:link="page://00f31ce9-d37d-4792-9520-20549e73152d")

Bon courage

ps: vous pourrez publier ici le code final de construction du lien si vous voulez smile


Raphael Franchet
Expert Ametys

Offline

Board footer

Powered by FluxBB