Standardspeicherort für Plugins zum Speichern / Zwischenspeichern von Dateien?

9

Gibt es offizielle Richtlinien, wo ein Plugin Dateien zwischenspeichern soll?

Wenn nicht, gibt es da draußen eine Best Practice, der ich folgen kann?

Ein Plugin, das beispielsweise Inhalte von einem Back-End-System abruft, profitiert vom Zwischenspeichern der Datei, sodass nicht wiederholt dieselben Inhalte aus dem Back-End abgerufen werden.

Das Suchen hier und anderswo ist schwierig, da die meisten Abfragen zum Zwischenspeichern von Plugins oder Datenbank-Tutorials führen.

Mein Instinkt sagt, sie in ein Unterverzeichnis von zu legen wp-content/uploads.

Mein sekundärer Instinkt wäre, die Dateien im Verzeichnisbaum des Plugins zu behalten. Dadurch bleiben die Plugin-Daten gruppiert, es folgt jedoch nicht der WordPress-Architektur, in der sich Benutzerinhalte befinden /uploads.

Matthew Bakaitis
quelle

Antworten:

6

Es wäre schön, wenn WordPress ein standardbasiertes Cache-Verzeichnis hätte, aber da dies nicht der Fall ist, ist es meiner Meinung nach die beste Option, es im Plugin-Ordner selbst zu behalten.

Uploads sind meiner Meinung nach für tatsächliche Uploads und Cache-Dateien werden nicht wirklich als solche betrachtet. Ich denke, es ist einfacher zu verwalten, reduziert mögliche Konflikte und um ehrlich zu sein, würde ich dort nachsehen, ob ein Plugin diese Funktionalität hat.

tl; dr: Die Cache-Dateien sind Teil der Funktionalität eines bestimmten Plugins und sollten damit gepackt werden.

Wyck
quelle
1
Das Problem bei diesem Ansatz ist, dass viele Benutzer den Schreibzugriff nur über den Upload-Ordner deaktivieren.
Kraftner
1
Wenn ein Plugin aktualisiert wird, löscht WP das alte Plugin vollständig und erstellt es von Grund auf neu. Selbst wenn Sie Berechtigungen speziell für ein Cache-Verzeichnis innerhalb eines Plugins festlegen, werden bei jedem Upgrade nicht nur die zwischengespeicherten Dateien, sondern auch alle Spuren dieser Schreibberechtigungen entfernt.
Jason
Ich habe ein paar gesehen, die WP_CONTENT_DIR / cache gemacht haben, und ich denke, ich werde dazu übergehen, nachdem ich eine Weile eine Lösung im Plugin-Ordner gemacht habe. Wie Jason sagte, könnten die Daten unnötig verloren gehen, und außerdem (obwohl dies kein Problem für Gelegenheitsbenutzer ist) kann die Größe des Plugin-Ordners überproportional zunehmen, während ich diesen Ordner gerne als eine faire Darstellung dessen betrachte, was aus der Verpackung kam.
Luke Sawczak
1

Wenn Sie keine sehr großen Daten speichern müssen, sollten Sie sich die Wordpress Transient-API ansehen:

http://codex.wordpress.org/Transients_API

Ihre Daten werden von Wordpress mit einer Ablaufzeit verarbeitet. Ich denke, es ist der "WordPress-Weg", Daten zwischenzuspeichern.

Andrea
quelle
In diesem Fall können die Daten ziemlich groß sein ... aber ich mag diesen Transienten-Ansatz für kleinere Dinge wirklich. Vielen Dank für den Hinweis. :)
Matthew Bakaitis
0

Sitzen mit dem gleichen "Problem". Zuerst dachte ich daran, diesen Cache als Option zu speichern, aber mein Cache war einfach zu groß, so dass dies nicht funktionierte. Vielleicht ist das eine Alternative, wenn Ihr Cache nie wirklich groß wird. Zum Beispiel, wenn Sie mit einer API kommunizieren und nur wenige Anfragen pro Stunde ausführen können und die Rückantwort nicht zu lang ist. :) :)

gubbfett
quelle