Emplacement standard pour le plugin pour enregistrer / mettre en cache les fichiers?


9

Existe-t-il des directives officielles sur l'endroit où un plugin doit mettre les fichiers en cache?

Sinon, y a-t-il une meilleure pratique que je peux suivre?

Par exemple, un plugin récupère le contenu d'un système dorsal bénéficie de la mise en cache du fichier afin qu'il ne récupère pas à plusieurs reprises le même contenu du backend.

La recherche ici et ailleurs est difficile car la plupart des requêtes conduisent à la mise en cache des plugins ou des didacticiels de base de données.

Mon instinct me dit de les mettre dans un sous-répertoire de wp-content/uploads.

Mon instinct secondaire serait de garder les fichiers dans l'arborescence des répertoires du plugin. Cela conserve les données du plugin regroupées mais ne suit pas (ce qui semble être) l'architecture WordPress où se trouve le contenu utilisateur /uploads.

Réponses:


6

Ce serait bien si WordPress avait un répertoire de cache basé sur des normes, mais comme ce n'est pas le cas, je pense que la meilleure option est de le conserver dans le dossier du plugin lui-même.

Les téléchargements sont à mon avis des téléchargements réels et les fichiers de cache ne sont pas vraiment considérés comme tels. Je pense que c'est plus facile à gérer, réduit les conflits possibles et pour être honnête, c'est là que je chercherais si un plugin a cette fonctionnalité.

tl; dr: les fichiers de cache font partie des fonctionnalités d'un plugin spécifique et doivent être fournis avec lui.


1
Le problème avec cette approche est que beaucoup de gens désactivent l'accès en écriture à partir de tout sauf du dossier de téléchargements.
kraftner

1
Lorsqu'un plugin est mis à jour, WP supprime entièrement l'ancien plugin et le recrée à partir de zéro. Ainsi, même si vous définissez des autorisations spécifiquement pour un répertoire de cache dans un plug-in, chaque mise à niveau supprimera non seulement les fichiers mis en cache, mais toute trace de ces autorisations d'écriture.
Jason

J'ai vu un couple faire WP_CONTENT_DIR / cache, et je pense que je vais passer à cela après avoir fait une solution dans le dossier du plugin pendant un certain temps. Comme Jason l'a dit, les données pourraient être perdues inutilement, et de plus (bien que cela ne soit pas un problème pour les utilisateurs occasionnels), la taille du dossier du plugin peut augmenter de manière disproportionnée, alors que j'aime à penser que ce dossier est une représentation juste de ce qui est sorti de la boîte.
Luke Sawczak

1

Si vous n'avez pas besoin de stocker de très grandes données, vous devriez jeter un œil à l'API Wordpress Transient:

http://codex.wordpress.org/Transients_API

Vos données seront traitées par Wordpress avec un délai d'expiration. Je pense que c'est le plus "wordpress-way" pour mettre en cache les données.


Dans ce cas, les données peuvent être assez volumineuses ... mais j'aime beaucoup cette approche transitoire pour les petits trucs. Merci de l'avoir signalé. :)
Matthew Bakaitis

0

Assis avec le même "problème". Au début, je pensais à stocker ce cache en option, mais mon cache était tout simplement trop grand, donc cela n'a pas fonctionné. C'est peut-être une alternative si votre cache ne sera jamais vraiment volumineux. Par exemple, si vous communiquez avec une API et ne pouvez faire que quelques demandes par heure et que la réponse de retour n'est pas trop longue. :)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.