Wie funktioniert das Widget für die letzten letzten Posts mit dem Cache?

Ich versuche ein Widget zu erstellen, das auf dem Standardwordpress-Widget für aktuelle Posts basiert. In wp-includes / default-widget.php bemerkte ich in der class WP_Widget_Recent_Posts im function widget (), dass die letzten Posts zuerst im Cache gesucht werden und wenn nicht, dann wird die Ausgabe-Pufferung class WP_Widget_Recent_Posts und das Ergebnis wird generiert und gespeichert zurück in den Cache. Da ich NuSphere IDE verwende, habe ich einen DebugBreak(); innerhalb der Bedingung if ( isset( $cache[ $args['widget_id'] ] ) ) ( DebugBreak() bewirkt, dass im aktuellen process eine Haltepunktausnahme auftritt.) Der Haltepunkt wurde jedoch nie ausgeführt, um darauf hinzuweisen, dass der Cache nicht ausgeführt wurde vorher setzen. Nun sollte dies nicht der Fall sein, da der Cache durch wp_cache_set('widget_recent_posts', $cache, 'widget'); . Das ist mein erstes Dilemma.

Zweitens würde ich es sehr begrüßen, wenn jemand etwas Licht in die functionsweise der Ausgangspufferung bringen würde. Ursache Wie ich bereits erwähnt habe, werden die letzten Posts zuerst im Cache gesucht und wenn nicht, dann wird Output Buffering ob_start(); ), das Ergebnis wird abgerufen und dann ob_get_flush(); wird ausgeführt wie $cache[$args['widget_id']] = ob_get_flush(); und der Cache ist gesetzt. Wenn also keine Ausgabe an den Browser gesendet wird, wie zeigt das Widget dann die letzten Posts an? Bitte helfen!

Solutions Collecting From Web of "Wie funktioniert das Widget für die letzten letzten Posts mit dem Cache?"

Sofern Sie kein memcached-type-Plugin installiert haben, speichert wp_cache_set nur Daten für die Dauer des aktuellen Skripts. Rufen Sie das Widget erneut auf oder fügen Sie es in derselben Instanz hinzu und Sie sehen, dass es den Cache verwendet.

Wie für ob_get_flush() , aus dem Handbuch übernommen :

Spülen Sie den Ausgabepuffer, geben Sie ihn als Zeichenfolge zurück, und deaktivieren Sie die Ausgabepufferung

Mit anderen Worten, es druckt und gibt den Puffer zur gleichen Zeit zurück.