Wie spült man Futter? Oder legen Sie eine Zeitüberschreitung für den Feed fest, damit er nicht zwischengespeichert wird?

Ich versuche, ein benutzerdefiniertes Feed-Format zu meiner Site hinzuzufügen (grundsätzlich Daten in eine Excel-Datei zu exportieren), und ich bin durch die Feed-Caching-Einstellungen verwirrt. Ich kann nicht herausfinden, wie die zwischengespeicherten Feeds gespült werden, oder die Zwischenspeicherung von Feeds während der Entwicklung deaktivieren.

Ich habe versucht, alle _transient_feed... , _transient_timeout_feed... und _transient_rss... Optionen zu _transient_rss... , aber ich sehe immer noch die zwischengespeicherten Feeds.

Und auf der Grundlage einiger Ratschläge in diesem Support-Forum-Thread habe ich versucht, diese Zeile zu meiner wp-config.php hinzuzufügen:

 define('MAGPIE_CACHE_AGE', 0); 

(Natürlich möchte ich einige Feeds zwischenspeichern, aber es wäre hilfreich bei der Entwicklung, das Feed-Caching zu deaktivieren.)

Hat jemand irgendwelche Vorschläge?


Einige Klarstellungen:

Entschuldigung, ich denke, ich war in der ersten Frage nicht klar genug und dann warf ich euch alle mit einem Hinweis auf den Elster-Cache, der komplett auf dem falschen Weg war. Ich war zuerst blind.

Ich add_feed() einen Feed zu meiner Website mit add_feed() . Die function, die den Feed generiert, verwendet die PHPExcel- class, um eine Excel-Tabelle zu schreiben. Dann setze ich passende Header für den Download und gebe die .xls Dateidaten aus.

Ich denke, mein Problem könnte ein Browser-Caching-Problem sein. Die URLs, von denen ich versuche, meine Feeds auszugeben, sehen folgendermaßen aus: mysite.com/facility/ummoc/?feed=master_log und die erstellte XLS-Datei heißt Master_Log.xls.

Das Hinzufügen einer Cache-Busting-Zeichenfolge zur URL-Anforderung kann den Cache umgehen , dh einen Feed von mysite.com/facility/ummoc/?feed=master_log&now=12ag4oSduq344 anfordern … Ich habe mich nur gefragt, ob es eine Möglichkeit gibt, den Cache zu deaktivieren insgesamt.

Solutions Collecting From Web of "Wie spült man Futter? Oder legen Sie eine Zeitüberschreitung für den Feed fest, damit er nicht zwischengespeichert wird?"

Es könnte definitiv ein Caching-Problem sein. Ich finde, dass REDbot hervorragend dafür geeignet ist, schnell zu überprüfen, wie das Ergebnis geliefert wird und welche Caching-Einstellungen es gibt.

Versuchen

  function do_not_cache_feeds(&$feed) { $feed->enable_cache(false); } add_action( 'wp_feed_options', 'do_not_cache_feeds' ); 

Wenn Sie beispielsweise einen einzelnen Feed JETZT aktualisieren müssen, um beispielsweise Änderungen in Site-Einstellungen oder einem Plug-in zu berücksichtigen, müssen Sie lediglich die im Feed angezeigten Posts aktualisieren.

Der Grund dafür ist, dass WordPress, ich Vermutungen, wenn es einen Feed serviert, überprüft alle Beiträge im Feed, und wenn keiner von ihnen aktualisiert worden, seit der Feed zwischengespeichert wurde, dient es den Cache, aber wenn ein Beitrag wurde aktualisiert, regeneriert es den Feed und aktualisiert den Cache.

Das war mir mehrere Male nützlich, zum Beispiel, als ich einen Feed aktualisieren musste, um ihn bei iTunes einzureichen.

Ich habe den ganzen Tag eine Lösung gefunden, um mit dem Feed-Cache umzugehen, da es nicht einfach ist, gelöscht zu werden, während ich es als Entwickler brauche. Schließlich habe ich eine Lösung gefunden, indem ich ein Skript, das ich hier gefunden habe, implementiert habe.

Ich habe das Skript in den WordPress-Stammordner gestellt, sodass ich jedes Mal, wenn ich den Quell-Feed aktualisiere, nur den rss-Cache lösche, indem ich das Skript wie folgt ausführe:

 http://mywordpress.com/reset_wp_rss.php 

Dieses Skript entfernt den aktuell zwischengespeicherten Feed, so dass später WordPress erzwingt, dass der neue aktualisierte Feed angezeigt wird.