Y a-t-il un danger à supprimer tous les transitoires?

9

J'ai un gros site pour un client, et comme il s'agit d'une installation wordpress vraiment personnalisée avec beaucoup d'extensions sur les fonctionnalités, je ne peux pas utiliser les plugins de mise en cache.

Pour améliorer les performances, j'ai construit une grande partie du site en utilisant des transitoires (par exemple la navigation, les cartes google avec tous les marqueurs etc.), et laisse le contenu dynamique dynamique.

Le problème ici est que si je change quoi que ce soit, je dois supprimer manuellement le transitoire spécifique pour voir le résultat actuel. Le site affiche différents menus et googlemaps lorsqu'ils sont entrés à partir d'un canal différent, j'ai donc comme dix transitoires pour chaque zone.

Souhaitez-vous créer une fonction où je les supprime tous en même temps (avec une liste des noms des transitoires), ou est-ce correct de supprimer tous les transitoires sur le site?

Ce n'est pas vraiment urgent, mais pour le développement futur, j'aimerais savoir si vous avez eu des problèmes avec des trucs comme ça, et comment vous gérez tous vos transitoires.

À la vôtre, fischi

fischi
la source

Réponses:

6

Pour le développement, je conseillerais de toujours travailler avec l' WP_DEBUGensemble trueet de faire ce qui suit:

$key = 'transient_key';
if( !WP_DEBUG && ( false !== ($transient = get_transient($key)) ){

   /* Generate transient manually */
   $expiration = 24*60*60;//How long to keep for
   set_transient($key,$transient, $expiration);
}

En général - il convient de supprimer correctement les transitoires, car ils ne doivent jamais être supposés être dans la base de données.

Stephen Harris
la source
merci @stephen, j'ai utilisé cette solution dans la phase de développement, mais je l'ai effacée lors de la phase de refactoring avant de prendre vie. n'aurait pas dû faire cela;) mais d'après votre expérience, avez-vous toujours eu du mal à supprimer les transitoires manuellement?
fischi
:) merci pour les informations sur la suppression des transitoires. j'ai pensé quelque chose comme ça, mais je n'étais pas totalement sûr.
fischi
1
Non, je n'ai jamais eu de mal à supprimer les transitoires manuellement - sauf à en avoir assez et à utiliser cette approche :).
Stephen Harris
1

Vous devez accrocher les différentes actions qui s'exécutent lorsque les choses sont mises à jour pour effacer et actualiser les transitoires. Par exemple, lorsque le menu de navigation est mis à jour, l' wp_update_nav_menuaction est déclenchée, accrochez une fonction à celle-ci pour actualiser votre menu de navigation transitoire.

Milo
la source
merci @Milo, celui-ci est une bonne idée, mais pas utilisable pour moi, car les transitoires n'affectent pas seulement le menu. il y a beaucoup de contenu (points d'intérêt sur une carte) ajouté tout le temps, et le site est assez occupé - donc je construis par exemple la liste des nouveaux POI juste une fois par heure, pas seulement surwp_update_nav_menu
fischi
ce n'était qu'un exemple, actualisez chaque transitoire sur l'action à laquelle il est lié
Milo
ouais, tu es juste ici. cependant, tous mes transitoires ne sont pas liés à une action. certains d'entre eux sont utilisés directement dans les fichiers de modèle (lorsque je crée de grandes listes) et contiennent le HTML réel, d'une durée d'une heure chacun. pour les transitoires qui sont fixés pour une longue durée de vie, comme celui que vous avez mentionné, j'utilise votre méthode :)
fischi
1

Ne serait-il pas préférable de faire votre développement sur un environnement de développement pour que la nécessité de voir vos modifications au fur et à mesure de leur impact n'ait pas d'impact sur le site public?

En utilisant cette approche, vous pouvez ensuite déployer / promouvoir en production et vider les transitoires à un temps de trafic faible avec un impact minimal sur les performances du site et l'expérience utilisateur.

Steve
la source
oui, ce serait mieux bien sûr - mais j'ai commencé le projet quelques semaines après avoir commencé mon entreprise, et j'ai beaucoup appris depuis. je suis en train de construire mon infrastructure complète - et je prévois de développer les thèmes et plugins personnalisés sur mon serveur, et dès qu'ils auront terminé déployer une mise à jour sur les sites avec la fonction de mise à jour wordpress. ce n'était pas la meilleure des méthodes que j'ai choisies là-bas, je l'avoue.
fischi
Je pense que nous avons tous been there and done thatà un moment ou à un autre.
Steve