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

Bibliothèques et frameworks PHP Discussion :

[Smarty] Automatiser les appels des fichiers externes (CSS/JS etc)


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre averti Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Points : 439
    Points
    439
    Par défaut [Smarty] Automatiser les appels des fichiers externes (CSS/JS etc)
    Comme le dit si bien le titre, je cherche un système d'appel des CSS et JS externes qui soit automatiser
    .
    Actuellement j'utilise le moteur de templates Smarty et je stocke les appels des fichiers externes dans des variables smarty ainsi dans mon modules smarty j'ai cette exemple parcelle de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $this->assign("css_all"  , "<link rel='stylesheet' type='text/css' href='".$this->get_template_vars("style_dir")."bloc.css'>\n".
    									"<link rel='stylesheet' type='text/css' href='".$this->get_template_vars("style_dir")."body.css'>\n".
    									"<link rel='stylesheet' type='text/css' href='".$this->get_template_vars("style_dir")."lien.css'>\n\n");
    Et dans mon TPL (template) j'appelle uniquement cette variable dans le <head>:

    Ainsi tous les styles css (ou js etc...) sont générés automatiquement par une variable ce qui allège le code pour le développeur (mais ne changeant en rien l'interprétation du navigateur biensur).

    Mais je cherche à dynamiser encore plus l'appel de ces fichiers externes de telle sorte que pour telle template, tel ou tel fichier sera appelés:
    - Je pourrais conserver mon système en affectant une variable par groupe de fichiers ou par fichier carrément ({$body.css}{$controle_apge.js}...)
    - Aucun intérêt à tout stocker en base de données puisqu'il faudrait à chaque fois pour le développeur d'accéder à la base pour la mettre à jour...a moins que peut-être un système pratique existe?
    - Néanmoins, une fonction appelées directement dans le tpl, à laquelle on lui passe le nom du fichier à insérer est envisageable. du genre: {charge_fic(body,controle_page)}

    Mais voyez-vous ou utilisez-vous un autre système de gestion des fichiers externes pour sites web "gigantesques"?

  2. #2
    Membre averti Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Points : 439
    Points
    439
    Par défaut ok
    finalement me suis développé un plugin smarty et paf...on ne peut pas plus pratique ^^!

  3. #3
    Membre éclairé
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Points : 858
    Points
    858
    Par défaut
    Smarty integre l'appel de constante... .. .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <link rel="stylesheet" type="text/css" href="{constant:SITE_CSS_PATH}bloc.css" />
    @ tchaOo°

  4. #4
    Membre averti Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Points : 439
    Points
    439
    Par défaut
    Oui mais c'est pour débuter ça, c'est pas assez automatisé pour l'envergure de mon site! Comme j'utilise un script de configuration de l'instance Smarty, j'ai développé un plugin smarty, càd une fonction à laquelle je passe le ou les fichiers à ajouter, et ça génère le code automatiquement. Ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {charge_fic fic="body,div,bloc,table,form" typ="css"}
    c'est propre et en plus ça brille!

  5. #5
    Membre éclairé
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Points : 858
    Points
    858
    Par défaut
    Je vois pas en quoi l'utilisation d'une constante (surement déja définie pour les script) directe dans le template n'est pas assez automatisée... après tu fais comme tu veux l'important étant que ça marche... .. .

    @ tchaOo°

  6. #6
    Membre averti Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Points : 439
    Points
    439
    Par défaut
    Tout simplement parceque tu dois appeler cette constante autant de fois que tu as de CSS à appeler
    Et que mon plugin permet en une ligne de gérer tous les CSS.

  7. #7
    Membre éclairé
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Points : 858
    Points
    858
    Par défaut
    Mouais... entre appeler une constante plusieurs fois ou faire éxécuter à smarty une fonction perso je suis pas sur qu'il y ai une différence en terme de perf... l'appel d'une constante est très rapide en terme d'éxécution... plus rapide qu'une variable donc bon... ça compence le nombre d'appel... .. .

    mais comme je l'ais dis l'important c'est que ça marche... .. .

    @ tchaOo°

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 18/05/2018, 10h32
  2. Réponses: 9
    Dernier message: 22/04/2015, 20h39
  3. Réponses: 3
    Dernier message: 19/08/2014, 14h41
  4. Réponses: 4
    Dernier message: 26/08/2010, 12h29
  5. les appels à des fichiers externes au code plantent
    Par a028762 dans le forum Eclipse PHP
    Réponses: 0
    Dernier message: 15/12/2007, 08h44

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