Ich erstelle eine Digg-ähnliche Website in WordPress.
Nach der Installation von W3 Total Cache habe ich festgestellt, dass bestimmte Elemente wie die Anzahl der Stimmen (und die Wähler-IDs) pro Beitrag zwischengespeichert werden, obwohl dies nicht der Fall sein sollte (zumindest nicht, nachdem ein Benutzer für einen Artikel gestimmt hat). Ich gehe davon aus, dass es nicht möglich ist, zu verhindern, dass bestimmte Elemente in einer Seite zwischengespeichert werden (oder?), Weshalb ich daran gedacht habe, die Aktualisierung des Seiten-Cache programmgesteuert auszulösen.
Irgendwelche Vorschläge?
quelle
W3 Total Cache unterstützt Fragment-Caching. Aus FAQ:
quelle
<?php ?>
Tags zum Öffnen / Schließen nicht überein . Ich hatte diese noch nicht benutzt, also habe ich keinen praktischen Ausschnitt, den ich zeigen könnte.?><!-- mclude -->functions2.php<!-- /mclude --><?php
(glaube ich :)So leeren Sie eine einzelne Seite mit der Post-ID in w3tc v0.9.3:
quelle
w3-total-cache-api.php
Plugin-Verzeichnis des W3TC.Bainternets Lösung schien für mich nicht zu funktionieren.
Ich verwende dieses alternative Snippet erfolgreich in einem Plugin, das bei der Aktion admin_init geladen wird :
Hoffentlich hilft das jemandem da draußen.
quelle
Keines der oben genannten Probleme hat in meinem Plugin funktioniert. Das hat aber geklappt! Bestätigt, für Version 0.9.2.4 von w3tc zu arbeiten.
Ich habe ein "$ wpdb-> get_results (" SELECT
sb_settings
.f_fb_app_id
,sb_settings
.f_fb_secret
FROMsb_settings
");" durchgeführt und war überrascht, dass die Werte f_fb_secret und f_fb_app_id jedes Mal gleich waren. Es war offensichtlich der W3TC-Cache, der das Ergebnis der Abfrage zwischengespeichert hat. Deshalb habe ich auf meiner Änderungsseite einen Dbcache-Flush für die Tabelle sb_settings hinzugefügt.Wenn Sie den Seiten-Cache löschen möchten, verwenden Sie stattdessen einfach w3tc_pgcache_flush.
quelle
Verwenden Sie dieses Snippet, um sicherzustellen, dass Ihr PHP ausgeführt wird, unabhängig davon, ob das Caching aktiviert oder deaktiviert ist. Ja, Sie müssen Ihre Funktion zweimal schreiben / aufrufen.
<!-- mfunc echo 'caching ON'; --><?php echo 'caching OFF'; ?><!-- /mfunc -->
(Ich denke) so funktioniert es:
<!-- mfunc echo "hello?"; -->
Denken Sie daran, je nachdem, wie glücklich Sie sind, dass die Benutzer Ihr PHP sehen (dies geschieht nur, wenn das Caching deaktiviert ist).quelle