Jump to content

Existe t'il un module (ou peut-être une méthode) pour purger une page en concret sans avoir a purger tout la cache.


Recommended Posts

HiHo,

Cela m'éviterai en effet de devoir purger tooooute la cache (alors que je ne souhaite purger qu'une seule page), et après cela devoir la rechauffer (car le prestashop est en production.. ).
Dans mon cas, lorsque j'edite des entrées blogs, cela veut dire devoir faire une cinquante ou plus de purges .. ).

Pour info: J'utilise le leoblog et Jpresta.

Merci d'avance pour l'information

Cordialement,

 

Link to comment
Share on other sites

Re-Bonjour @Prestashop Addict,

Votre question m'a refait penser à une chose... Le Jpresta permet en effet de purger des pages de manière sélective et individuelle.
Si en effet cette purge séléctive au niveau Jpresta permettait la purge correspondante au niveau Smarty, donc .. bingo objectif atteint.
Je vais demander confirmation à Jérôme, le dev. de Jpresta, à voir ce qu'il répond (je reconfirmerai par ici, mais bon, si quelqu'un a déjà la réponse :) elle est
bienvenue).

Cordialement à tous,


 

Link to comment
Share on other sites

  • 2 weeks later...

Le problème du cache smarty est que chaque page / module / front controller peut gérer le cache de façon différente (id de cache, durée...) donc pour faire quelque chose de générique pas facile 😞 Peut-être peux-tu expliquer quels caches de pages tu veux supprimer (catégorie, produit, cms, marques...).

Link to comment
Share on other sites

Bonjour a tous, @Prestashop Addict ,

Avant toute chose, merci beaucoup pour le feedback, et pour m'aider à comprendre.

Donc mon cas particulier est le suivant:
J'utilise le leoblog de leotheme (oui .. je sais .. commence bien .. ) , pour créer des entrées de blog.
Dans ces pages, j'incruste un shortcode. Ces shortcodes correspondent au contenu des entrées de blog.
Ces shortcodes, sont édités via le Appagebuilder fourni avec le leotheme.

Et le problème que j'ai est que à chaque fois que j'édite un article et ceux jusqu'à qu'il soit prêt, je dois invalider la cache pour voir le résultat actualisé.
Et le re-problème ici est que je dois, invalider la cache pas mal de fois, et cette purge est non selective.
Pour une boutique en prod, cela le fait vraiment moyen ...
Je me suis fait un script pour re-crawler les pages de la boutique après la purge non-sélective, mais bon, ce n'est qu 'un workaround dans un scénario pas 
vraiment idéal.

Et voilà pour l'explication.

Merci
 

Link to comment
Share on other sites

Sur chaque classe qui étend ObjectModel, vous pouvez appeler clearCache, $this->clearCache();

Peut-être que ça peut vous aider ? 

Cela vide les entrées en cache pour l'ID de l'objet que vous êtes en train de manipuler. 

Si votre article est un objet qui étend ObjectModel, vous pourriez par exemple lui donner l'instruction clearCache au moment de l'enregistrement.

Link to comment
Share on other sites

Bonsoir @Tom Girou, @Prestashop Addict , tous le monde,

Oui effectivement intéréssante approche (le seul problème est que mon propre niveau en PHP , et plus encore OOP est très au dessous des paquerettes ..
Mais je m'y mettrai dès que un moment avec beaucoup d'intérêt  .. le boulot s'amoncelle ..mmh ).

Je comprends le concept de ce que vous proposez.

1) Soit je demande au personne de leotheme d'implémenter cette functionalité (je leur ai déjà soumis plusieurs bugs qu'ils ont acceptés de corriger sans problème, même si au niveau comm. c'est parfois difficile à cause de leur niveau d'anglais).

2) Soit je met les mains dans le cambouille, mais dans ce cas là, il me faut absorber un certain niveau de connaissance pour dépasser celui que j'ai en PHP/OOP/Prestashop, mais le défi peut-être très motivant. Il me va falloir m'y mettre. Demain je commencerai à chercher des "ressources" pour commencer à relever le niveau.

Donc pour ce que je comprends au final, il n'existe pas de solution à mon problème prête à l'emploi.
Si tous le monde est conforme, nous pouvons donc fermer ce fil de discussion (dois-je le mettre en "résolu"?)

Merci à tous encore une fois. Vous êtes une chouette communité ! Dommage que cela ne soit pas le cas partout :)

Bonsoir à tous! Et à bientôt!

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...