martin Posté 12 Mai 2005 Posté 12 Mai 2005 (modifié) Comme je suis fainéant, j'ai fait un bout de code qui m'écrit mes liens... Ainsi je n'ai plus qu'a remplir un tableau et appeler la fonction. Cela à deux avantages. Premièrement, mon lien est forcément valide. plus à passer par la vérification XHTML. surtout si le lien à été géneré par un utilisateur d'un forum par exemple... Deuxièmement, je trouve cela plus simple et moins contraignant, mais ca c'est mon avis. Il suffit de remplir les valeurs qui nous interressent et de laisser les autres vides. Il faut bien evidemment combiner ceci avec un fichier css, notamment pour l'attribut "lang" La fonction <?phpfunction nc_make_link($link) { //inclusion du template include('site/tmp/template_link.php'); echo $template_link; }?> Le template <?php$template_link='<a href="'.$link['url'].'" title="'.$link['title'];//si le lien doit s'ouvrir dans une nouvelle fênetre, on le marque dans l'attribut titleif(isset($link['window']) && $link['window'] == 'new') { $template_link.=' dans une nouvelle fenêtre'; }$template_link.='"';//si il y a une accesskey, on l'ajouteif(isset($link['accesskey']) && !empty($link['accesskey'])) { $template_link.=' accesskey="'.$link['accesskey'].'"'; }//si il y a une class css on l'ajouteif(isset($link['class']) && !empty($link['class'])) { $template_link.=' class="'.$link['class'].'"'; }//si le lien doit s'ouvrir dans une nouvelle fênetre, on le fait en javascript pour rester conforme XHTMLif(isset($link['window']) && $link['window'] == 'new') { $template_link.=' onclick="window.open(this.href,\'_blank\'); return false;"'; }//Si la langue est différente du francais, on rajoute l'attribut langif(isset($link['lang']) && ($link['lang']!='fr' && $link['lang']!='')) { $template_link.=' hreflang="'.$link['lang'].'"'; }$template_link.='>'.$link['name'].'</a>';?> L'appel de fonction <?php//initialisation des variablesunset($link);//remplissage des données, ne mettre que celle dont on à besoin, les autres sont facultatives$link['name'] = 'nom du lien';$link['url'] = 'http://www.domaine.tld';$link['title'] = 'title';$link['accesskey'] = '1';$link['window'] = 'new';$link['lang'] = 'fr';$link['class'] = 'classe css';//Appel de la fonctionnc_make_link($link);?> Cet code est en fonction sur mon site : http://new-concept.supiot.net Voilà, si vous y voyez des améliorations... <modérateur: déplacé en PHP & MySQL : plus adapté> Modifié 14 Mai 2005 par Loupilo
Country Posté 12 Mai 2005 Posté 12 Mai 2005 Simpa, mais pour la nouvelle fenêtre j'aurai plutôt fait de cette façon avec un script externe : http://css.alsacreations.com/Tutoriels-Jav...ouvelle-fenetre Sinon le problème avec les forums c'est que c'est pas vraiment possible de mettre un attribut title et lang (et encore moins un acceskey) à chaque lien posté par les membres.
martin Posté 12 Mai 2005 Auteur Posté 12 Mai 2005 On en met un seulement si cela est nécéssaire, faudrait voir pour adapter les bbcode... mais on peut aussi imaginer que le script aille chercher la langue de la page en question, en fonction des ses metas, et de génerer un title en fonction du nom de l'url... L'interet de cette fonction est surtout pour génerer une liste de liens dynamiquement avec une base de données...
Country Posté 12 Mai 2005 Posté 12 Mai 2005 mais on peut aussi imaginer que le script aille chercher la langue de la page en question, en fonction des ses metas, et de génerer un title en fonction du nom de l'url... Oui, j'avais essayé ça pour mon forum, je te déconseille, c'est beaucoup trop lent
martin Posté 13 Mai 2005 Auteur Posté 13 Mai 2005 Ah, bah d'accord, c'était une idée comme ca... encore que tel quie je me conais je testerai surement, mais merci du conseil...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant