Ich habe die Transients-API noch nie zuvor verwendet und mich gefragt, ob jemand eine Anleitung zur Verwendung hat. Der Codex-Artikel impliziert, dass ich als Theme-Entwickler jedes neue WP_Query()
als Übergang festlegen möchte . Ich nehme an, dasselbe gilt für direkte $ wpdb-Abfragen und query_posts()
. Ist das übertrieben? Und / oder gibt es andere Orte, an denen ich es standardmäßig verwenden sollte?
Ich verwende auf meiner Site oft Caching-Plugins (normalerweise W3 Total Cache) und es hört sich so an, als würde die Verwendung von Transients die Effektivität des Plugins erhöhen, aber ich möchte nicht verrückt werden, wenn ich alles in Transienten packe, wenn dies nicht die beste Vorgehensweise ist.
Antworten:
Transienten eignen sich hervorragend für komplexe Abfragen in Ihren Designs und Plugins. Ich neige dazu, Transienten für Dinge wie Menüs zu verwenden und andere Dinge wie Tweets von Twitter in einer Seitenleiste anzuzeigen. Ich würde sie nicht für absolut alles mehr verwenden - also nur für temporäre Daten, die zwischengespeichert werden können.
Denken Sie daran, dass Sie einen massiven Leistungszuwachs bemerken werden, wenn Sie Memcached mit Transienten verwenden. Die Regel bei Transienten ist, dass sie nicht für Daten verwendet werden, die nicht verfallen sollten, da sie eigentlich nur für temporäre Daten gelten. Beachten Sie, dass Transienten nicht immer in der Datenbank gespeichert werden.
Einige Anwendungen für Transienten :
Dieser Artikel ist sehr informativ und zeigt anhand kurzer Benchmarks, wie Transienten Ihre Website beschleunigen können. Er enthält sogar einige Beispiele. In diesem anderen Artikel finden Sie auch einige gute Beispiele für die Verwendung von Transienten, anhand derer Sie möglicherweise besser verstehen, wofür sie verwendet werden sollen.
quelle
Es gibt verschiedene Caching-Mechanismen in WordPress und ihre Mechanismen unterscheiden sich je nach Auswahl des Objektcaches (nativ oder nicht):
Auf den Punkt gebracht bedeutet dies, dass der Übergang immer persistent ist (im Gegensatz zum nativen Cache zwischen den Seitenladevorgängen bestehen bleibt), dass jedoch ein angepasster Speicher verwendet wird, wenn er bereitgestellt wird (im Gegensatz zu Optionen).
Dies macht Transienten zur vielseitigsten Wahl für das Caching.
Mit der Flexibilität geht jedoch eine gewisse Komplexität einher, und es gibt eine Reihe von Nuancen (z. B. Begrenzung der Namenslänge, unterschiedliches Verhalten mit und ohne Ablauf, fehlende Speicherbereinigung), die sie komplexer machen, als sie scheinen.
Insgesamt:
quelle
Ich denke, der Code von Sterling könnte verbessert werden, indem die Funktion get_transient nicht zweimal aufgerufen wird. Speichern Sie stattdessen das erste Ergebnis in einer temporären Variablen. Weil die Idee hinter der Transient API Geschwindigkeit ist ;-)
quelle
Kurze Antwort: Sie sollten es verwenden, wenn / wo Sie können.
Lange Antwort:
Die Transients-API dient zum Zwischenspeichern. Sie möchten es also so oft wie möglich verwenden. Sie können eine Funktion schreiben, die dies für Sie erledigt.
Es ist kein Overkill und wenn es richtig gemacht wird, wird es ziemlich elegant:
quelle
Transients API ist sehr nützlich, wenn Sie Daten aus externen Quellen wie Facebook, Twitter abrufen.
Um eine genauere Vorstellung davon zu bekommen, was Transients API ist und was sich von der Cache WordPress-Funktion unterscheidet, empfehle ich, sich den Vortrag von Otto und Nanic vom WordCamp San Francisco 2011 anzuschauen
quelle