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 :

[Templates] Création de templates


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5
    Points : 4
    Points
    4
    Par défaut [Templates] Création de templates
    Bonjour,


    je bosse actuellement sur un CMS en PHP dont on m'a demandé d'un peu optimiser la fonctionnalité.


    J'essaie actuellement de simplifier la façon pour créer des templates.

    Actuellement nous employons le système suivant :

    Le CMS possède un éditeur dans lequel on sélectionne le template voulu. <tiré d'une DB SQL>
    Une fois le bon template sélectionne on trouve une fenêtre dans lequel on peut entrer du html ainsi que des placeholders. <avec la liste des placeholders à gauche>. Le tout est sauvegarder dans la banque de données.

    Ensuite dans le code php je fais un truc genre

    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
    20
    21
    22
     
    function GetTemplate($templatename)
    {
    $template = //query sql "Select * from templates where name='$templatename' ';
    return $template;
    } 
    //Donc j'obtiens le squelette
    //ensuite je remplace les placeholders avec str_replace
     
    function GetItems()
    {
    $query = //Select * from matable where ...
    $template=$this->GetTemplate($templatename);
    while ($query->fetchInto($item,DB_FETCHMODE_ASSOC))
    {
    $objet=$template;
    $objet= str_replace("{PLACEHOLDER}",$item['colonne'],$objet);
    // a répéter pour chaque valeur
    $content.=$objet;
    }
    return $content;
    }
    Cela fonctionne bien mais la création des templates est assez longue et quand un module en a une bonne 100taine je perds un temps fou. Donc je me demande s'il n'y a pas un moyen plus simple pour les créer. (Que ce soit en php ou autre chose.)


    Merci d'avance. ^^

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    Tu gagnerais dejà beacoup de temps à l'exécution si tu rappatriais tous les templates en un seul voyage au lieu de faire un GetTemplate() à chaque itération.
    Cela implique que pour une page tu puisses référencer facilement à l'exécution les templates inclus dans la page ainsi que les éventuels templates inclus dans les templates...

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci pour cette réponse.


    Je suis d'accord, pour l'instant nous utilisons beaucoup trop de query.

    Après je me demande s'il ne serait pas plus simple de faire un gros template en XSLT (par exemple) via l'editeur de templates plutot que de faire une centaine de petits templates, parce que entrer tout dans la banque de données prend un temps fou.

  4. #4
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    C'est comme tout, faire un gros template pourquoi pas mais il faut se méfier du code monolithique. En l'état actuel, je pense qu'il faudrait voir comme tu le suggère s'il n'y aurait pas une manière judicieuse et logique de regrouper des petits templates afin d'en réduire le nombre. Parce qu'inclure une centaine de template pour monter une page web relève d'un tour de force que je n'ai jamais vu auparavant

    Je ne te cache pas que faire du template pour faire du template ça ne sert à rien à part pour faire chuter les perfs.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci pour tes conseils.


    Je ne compte pas réduire tout à un template mais bien regrouper ce qui peut l'être. Faire 10 templates différents parce que un arbre à 5 niveaux donc chaque branche peut renfermer ou lien ou pas est peu judicieux à mon avis. Je dois pouvoir faire ça en un.

Discussions similaires

  1. [eZ Publish] Templates création de formulaire
    Par tamiii dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 18/03/2009, 03h19
  2. Problème de création de template avec photoshop CS 3
    Par sarapis dans le forum Webdesign & Ergonomie
    Réponses: 4
    Dernier message: 11/09/2008, 15h55
  3. Une petite erreur de création de templates
    Par terry21 dans le forum C++
    Réponses: 6
    Dernier message: 11/10/2007, 12h55
  4. Création de templates
    Par Félix62 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 26/06/2007, 12h39
  5. [Système] Création moteur templates
    Par alexmorel dans le forum Langage
    Réponses: 8
    Dernier message: 14/08/2006, 20h14

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