it-swarm.com.de

Feed, RSS kann den Cache nicht löschen und das Limit der Cache-Lebensdauer nicht ändern

Das WordPress-Feed-System ist ohne Grund EXTREM komplex.

Ich bin herum und herum und herum in Kreisen gegangen.

Ich benutze:

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

define( 'MAGPIE_CACHE_AGE', 1 );

function prefix_set_feed_cache_time( $seconds ) {
    return 1;
}
add_filter( 'wp_feed_cache_transient_lifetime' , 'prefix_set_feed_cache_time' );

In meiner functions.php Datei in meinem Themes Ordner.

Hat aus einem Grund nicht funktioniert, der mir ein Rätsel ist.

Die erste Frage lautet also: Gibt es eine Möglichkeit, das Zwischenspeichern des Feeds zu beseitigen? Ich benutze bereits Lack?

Zweitens, wie kann ich die aktuell zwischengespeicherten Feeds löschen?

Drittens, wo zum Teufel wurden sie gelagert? Ich schaue buchstäblich überall hin.

1
jnbdz

Wenn Sie W3 Total Cache oder ein anderes Cachesystem verwenden, stellen Sie sicher, dass die Feeds nicht zwischengespeichert werden.

WordPress verwendet SimplePie zum Parsen seiner Feeds. Es sind viele Dinge, die gleichzeitig passieren und Verwirrung stiften können. Zuerst speichert SimplePie die Feeds im Cache, ich habe noch nicht herausgefunden, wie ich sie löschen soll oder wo sie gespeichert sind. Sie können diesen Code jedoch verwenden, um zu erzwingen, dass er nicht zwischengespeichert wird oder die Feeds für eine kürzere Zeit zwischengespeichert werden.

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

function prefix_set_feed_cache_time( $seconds ) {
    return 1;
}
add_filter( 'wp_feed_cache_transient_lifetime' , 'prefix_set_feed_cache_time' );

Stellen Sie auch beim Testen sicher, dass Sie Ihren Browser-Cache leeren. Weil SimplePie mit WordPress HTTPCG (HTTP Conditional Get) verwendet. Weitere Informationen zum SimplePie-Caching finden Sie hier: SimplePie-Caching .

1
jnbdz