Wie lege ich den Cache für den integrierten SimplePie Feed Parser fest?

Ich verwende das integrierte SimplePie, AKA fetch_feed() , um einen Feed abzurufen, und ich möchte die Cache-Zeit über ein Admin-Menü anpassen können. SimplePie selbst ist gut dokumentiert, aber nicht so sehr die WordPress-Implementierung.

Irgendwelche Gedanken über die beste Möglichkeit, die Cache-Dauer einzustellen?

Solutions Collecting From Web of "Wie lege ich den Cache für den integrierten SimplePie Feed Parser fest?"

Der Wert für die Cache-Dauer (standardmäßig 43200 Sekunden) wird festgelegt, wenn das Feed-Objekt generiert und durch wp_feed_cache_transient_lifetime Filter wp_feed_cache_transient_lifetime mit dem zusätzlichen Argument feed URL übergeben wird.

Dies ermöglicht eine bequeme Filterung sowohl global als auch für bestimmte Feeds.

Siehe Quelle fetch_feed () für diesen und andere Hooks, mit denen Sie das Verhalten ändern können.

Um die Lösung von Rarst zu erklären. Ich habe folgendes sehr erfolgreich eingesetzt:

 add_filter( 'wp_feed_cache_transient_lifetime', create_function( '$a', 'return 3600;' ) ); 

Dies setzt den Feed-Cache auf eine Stunde und sollte sofort nach der feed.php include platziert werden.