IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Génération d'ID CSS


Sujet :

Langage PHP

  1. #1
    Membre habitué Avatar de stanley
    Webmaster
    Inscrit en
    Décembre 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Décembre 2004
    Messages : 270
    Points : 128
    Points
    128
    Par défaut Génération d'ID CSS
    Bonjour tout le monde,

    Je suis sur un projet d'un site web multi-langues, afin d'avoir un style personnalisé pour chaque lien dans mon menu de navigation, j'ai créé une fonction PHP qui génère automatiquement un ID CSS pour chaque item de mon menu, pour ensuite le personnaliser via CSS.

    Cette fonction attribue par exemple au lien "Chèque barré" l'ID : Chquebarr (en gros,j'enlève les accents et les espaces, je n'autorise que l'alphabet en majuscule et minuscule, ainsi que les chiffres)

    Mon problème est avec les autres langues, ce site, je suis entrain de le construire en français, anglais, hongrois et russe. Les 3 premières langues ayant des caractères latin, jusqu'ici, pas de problème, mais avec le russe, ma fonction ne passe pas, et quand je consulte le source de mon site, je vois un que l'id de mon lien russe est vide.

    Je me demandais s'il y avait possibilité en PHP de transformer les caractères russes en latins, ou bien tout simplement de créer une fonction qui assigne au liens russe des ID's en caractères latins ?

    La fonction que j'ai utilisé pour assigner les ID aux liens est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?php
    function phptemplate_menu_item($link, $has_children, $menu = '', $in_active_trail = FALSE, $extra_class = NULL) {
      $class = ($menu ? 'expanded' : ($has_children ? 'collapsed' : 'leaf'));
      if (!empty($extra_class)) {
        $class .= ' '. $extra_class;
      }
      if ($in_active_trail) {
        $class .= ' active-trail';
      }	
    $id = preg_replace("/[^a-zA-Z0-9]/", "", strip_tags($link));
     
     
     
     
      return '<li id="'.$id2.'" class="'. $class .'">'. $link . $menu ."</li>\n";
    }
     
    ?>
    Bon pour Info, c'est une fonction incluse dans le fichier template.php que Drupal utilise, car ce site, je suis entrain de le faire avec Drupal.


    Merci pour votre aide

  2. #2
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    Je vois que tu utilises id et class ? tu te sers des 2 pour la gestion des style ?
    C'est possible...
    Cependant on est d'accord sur le fait que tu souhaite un style par langue... Pourquoi ne pas garder les mêmes id et class peut importe la langue, et charger plutôt un css différent...
    En plus le fait d'avoir un id différent en fonction de la langue t'oblige aussi à le gérer au niveau du javascript s'il est dynamique ou si tu as besoin d'y accéder via l'id...

Discussions similaires

  1. [Débutant] Css non détécté à cause de la génération d'id par ASP.net
    Par Dartounet dans le forum ASP.NET
    Réponses: 6
    Dernier message: 15/01/2014, 12h13
  2. [eZ Publish] Problème de génération de CSS avec ezless
    Par azrael62 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 21/11/2013, 10h08
  3. Génération de css en ligne
    Par Rony Rauzduel dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 15/08/2009, 13h33
  4. Site maven : génération de lien css
    Par ggalou08 dans le forum Maven
    Réponses: 5
    Dernier message: 03/06/2008, 08h56
  5. Génération de classe CSS
    Par dahu17 dans le forum Langage
    Réponses: 1
    Dernier message: 15/03/2008, 22h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo