Wie deaktiviere ich das Caching von benutzerdefinierten Blöcken auf der Produktansichtseite?

Antworten:

8

Ich gehe davon aus, dass Sie das Caching des Blocks nach PageCacheModulen deaktivieren möchten . Es stehen zwei Optionen zur Verfügung:

  1. Set - cacheable="false"Attribut im Layout. Dies macht jedoch die gesamte Produktseite nicht zwischenspeicherbar, wahrscheinlich nicht das, was Sie wollen. Beachten Sie das vorhandene Problem mit der cacheable="false"Produktansichtseite
  2. Verwenden Sie UI-Komponenten
  3. Setzen Sie die _isScopePrivateEigenschaft truein Ihrem Block nicht auf, dies ist eine veraltete Funktionalität
Alex Paliarush
quelle
Vielen Dank . Ich werde es versuchen und dir bald antworten
Xanka
@xanka Hat es geholfen?
Alex Paliarush
1
@Alex Paliarush Ich habe versucht, _isScopePrivate in meinem benutzerdefinierten Block auf true zu setzen, um ein bestimmtes Logo für den Kunden mit Tier-Preis hinzuzufügen. aber es scheint nicht zu funktionieren. Mein benutzerdefinierter Block wurde nicht von Ajax gerendert.
Ricky.C
2
cacheable = "false" deaktiviert das Caching für die gesamte Seite! Dies ist ein Rezept für Leistungseinbußen. Weitere Informationen zum Caching finden Sie unter inviqa.com/blog/how-full-page-cache-works-magento-2 .
Dmitri Sologoubenko
@ Rick.C "Verwenden Sie die Eigenschaft $ _isScopePrivate nicht in Ihren Blöcken. Diese Eigenschaft ist veraltet und funktioniert nicht ordnungsgemäß." Finden Sie dies im Magento-Handbuch: devdocs.magento.com/guides/v2.1/config-guide/cache/… . Ich denke, diese Links sind auch hilfreich, um den Cache in bestimmten Blöcken zu deaktivieren.
user1506075