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] Charger un tpl dynamiquement?


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Homme Profil pro
    Développeur Java/Scala
    Inscrit en
    Octobre 2007
    Messages
    1 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Scala

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 086
    Par défaut [Smarty] Charger un tpl dynamiquement?
    Hello

    Voila j'ai un site avec beaucoup de pages qui se ressemblent, l'architecture est toujours la meme, seul le contenu dans un seul div change...


    Pour le moment ce qui est en place: plein de tpl dans lesquels il y a toujours le meme code...


    Moi ce que j'aimerai c'est avoir ce code redondant factorisé, donc dans un unique template, et pouvoir charger dynamiquement la partie qui change selon les pages si vous voyez ce que je veux dire...


    Bref est-il possible de faire quelque chose du genre:

    $smarty->assign("content", "CONTENT.tpl");
    $smarty->display('MAIN.tpl');

    et que ca affiche, dans le template MAIN, le contenu qui se trouve dans CONTENT.tpl ?


    voila merci d'avance

    PS: j'ai testé les {include file="{$content}"} etc mais ca a pas l'air de trop marcher ^^ fallait s'y attendre

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Par défaut
    J'ai le même problème actuellement.

    Pour l'instant, la solution que j'ai trouvé :
    • définir des header.tpl et footer.tpl qui seront appelés dans tous les autres templates
    • charger dynamiquement le template "maitre" depuis la page PHP
    Les différents templates à charger dynamiquement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    {include file='header.tpl'}
    Ma page 1
    {include file='footer.tpl'}
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    {include file='header.tpl'}
    Ma page 2
    {include file='footer.tpl'}
    Le code PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $page = ... ;
    $oSmarty->display($page);
    Je ne sais absolument pas si c'est propre... mais je n'ai pas mieux.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 94
    Par défaut
    Salut,

    Si depuis PHP tu 'assign' le content de ton DIV, et que depuis 'MAIN.tpl' tu appelles {$content}, ça ne fonctionne pas?

    $smarty->assign("content", $content_viaPHP);
    $smarty->display('MAIN.tpl');

Discussions similaires

  1. Réponses: 6
    Dernier message: 19/10/2006, 09h36
  2. [VB.NET]Charger et décharger dynamiquement des fichiers DLL
    Par leSeb dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/08/2006, 11h31
  3. Hibernate : charger une collection dynamiquement
    Par Tail dans le forum Hibernate
    Réponses: 4
    Dernier message: 04/08/2006, 09h35
  4. [Avancé][Optimisation] Charger des librairies dynamiquement
    Par Wookai dans le forum Général Java
    Réponses: 12
    Dernier message: 12/08/2005, 16h34
  5. [FLASH MX] Charger un swf dynamiquement
    Par Toutouffe dans le forum Flash
    Réponses: 3
    Dernier message: 24/01/2005, 01h19

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