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] Comprendre le fonctionnement du cache


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier
    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
    Points : 74
    Points
    74
    Par défaut [Smarty] Comprendre le fonctionnement du cache
    Bonjour,
    Je souhaite activé le cache smarty sur mon site :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $tpl->caching = true;
    $tpl->cache_lifetime = 3600*4;
    Le hic c'est que j'ai une gestion de news qui appelle un fichier php et un template avec une id différente :

    /actualite-88-ma-news.html

    Si le cache est actif, peux importe l'url de la news c'est toujours le même contenu en cache qui apparait, quelle solution mettre en place sachant que j'ai de nombreuse rubrique qui fonctionnent sur le même principe ?

    Merci pour vos lumière.

  2. #2
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Bonjour

    Les valeurs pour $tpl->caching peuvent être 0, 1 ou 2. cf la documentation de smarty.

    Dans ton cas 2 donc
    Mais ça ne suffit pas parce que je suppose tu gères à travers un fichier .htaccess un seul fichier php pour afficher différentes news suivant leur id correspondant; pour régler ton soucis il faudrait passer l'id du cache($cache_id) lié à chaque article au display comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $tpl->caching = 2;
    $tpl->cache_lifetime = 3600*4;
    $tpl->display('ton_tpl', $id_de_ta_news);

  3. #3
    Membre régulier
    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
    Points : 74
    Points
    74
    Par défaut
    Bonsoir,
    Désolé pour la latence et merci pour ton aide, effectivement j'utilise un seul fichier index.php, qui appelle le code PHP correspondant au bon TPL.

    Ok je vais tester avec l'id de la news.

  4. #4
    Membre régulier
    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
    Points : 74
    Points
    74
    Par défaut
    Question supplémentaire, si je veux mettre qu'une partie de mon site en cache par exemple uniquement la rubrique news, est il possible de le faire ?

    Sachant que toutes mes page sont appelé via le même fichier index.php ?

  5. #5
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Oui c'est possible de ne mettre en cache que ce que tu veux.
    Pour le faire, au lieu d'activer le cache au niveau de la config général qui gère tes templates, il faut juste l'activer au niveau du fichier php que tu veux juste mettre en cache et seulement les templates concernés seront en cache

Discussions similaires

  1. Comprendre le fonctionnement d'un code
    Par developppez dans le forum Général Java
    Réponses: 2
    Dernier message: 16/05/2008, 16h58
  2. Comprendre le fonctionnement des objets de SynEdit
    Par SoftAbdou dans le forum Composants VCL
    Réponses: 5
    Dernier message: 04/05/2008, 23h49
  3. Réponses: 3
    Dernier message: 25/03/2008, 09h46
  4. Réponses: 4
    Dernier message: 11/11/2007, 15h00
  5. [Smarty] Qu'entend-on par cache dans les templates
    Par pierrot10 dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 06/12/2006, 11h38

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