wordpress

Les API transitoires (Transients API) de WordPress offrent un moyen simple et standardisé de stocker des données mises en cache pour un temps défini dans la base de données, après quoi elles expirent. Les Transients ont une date d'expiration fixe et sont supprimés automatiquement lorsque le délai d'expiration est atteint. L'idée étant que vous définissez une date d'expiration pour chacun, et que WordPress les supprime automatiquement lorsqu'elle est atteinte.

Jusqu'ici tout va bien, non? Pas tout à fait.

Il arrive que les Transients périmés soient effacés correctement de la base de données, mais que la table wp_options devienne conséquente. En creusant un peu, vous pourrez vous apercevoir que certains enregistrements transitoires sont toujours dans la DB, y compris tous ceux qui ont une date d'expiration dépassée.

WordPress ne semble pas gérer la suppression de certains Transients périmés dans la base de données.

Alors, pourquoi ces données transitoires ne sont pas supprimées automatiquement?

Avec les WordPress Transients, vous obtenez un comportement différent, mais toujours très indésirable. Parce que les valeurs sont inscrites dans la base de données, pas de taille fixe par bloc de RAM. Ce qui signifie que, même avec un site très chargé, vous avez encore vos données de session.

Parce que ce ne est pas précisé dans le Transient API lorsque vous utilisez les clés uniques comme pour les sessions. Ce qui se passe avec la méthode intégrée, c'est que le tableau des options se remplit indéfiniment! Parce que: le nettoyage des "anciennes données" ne fonctionne que lorsque vous demandez la clé. Si vous venez de vider cette clé, les données seront laissée dans la table des options, pour toujours. Il n'y a pas processus distinct qui nettoie ces "up!".
Donc, votre base de données est rempli avec beaucoup de données périmés et redondantes.

Q : Quelle est la solution pour supprimer automatiquement les Transients ?
R : Il n'y en a pas, vraiment.

En d'autres termes, vous devez les supprimer vous-même - mais n'ayez crainte - un Add-on du plugin DB Cleaner vient à la rescousse pour gérer cela a votre place.

Téléchargez le plugin DB Purge Transients, mettez-le dans votre dossier plugins, vérifiez que le plugin DB Cleaner est présent et activez-le dans l'admin de WordPress. Maintenant toutes les données transitoires expirées seront supprimées de votre base de données une fois par semaine.

Page Produit