Dynamische Inhalte bedeuten in Magento 2 nicht automatisch, dass eine komplette Seite vom Full Page Cache ausgeschlossen werden muss. Genau dafür gibt es Private Content.

Während ein Block mit cacheable=”false” dazu führen kann, dass die gesamte Seite nicht mehr über den Full Page Cache ausgeliefert wird, bleibt die eigentliche Seite bei Private Content weiterhin cachebar, nur einzelne benutzerspezifische Bereiche werden separat geladen und dynamisch ausgegeben.

Typische Beispiele sind der Warenkorb, der Kundenname oder die Wunschliste.

Das Prinzip dahinter ist einfach zu erklären: Cachebarer Inhalt kommt aus dem Full Page Cache, individueller Inhalt wird unabhängig davon nachgeladen.

cacheable=”false” sollte daher nicht “einfach mal so” verwendet werden, nur weil ein einzelner Bereich dynamisch ist. Private Content ermöglicht in vielen Fällen die sauberere Lösung, ohne die Cache Wirkung der gesamten Seite zu verlieren.

Ein einfaches Beispiel ist eine eigene Customer Section. Die PHP Klasse liefert die individuellen Daten:

Die Section wird anschließend in der etc/frontend/di.xml registriert:

Unter Hyvä stehen die Customer Sections über das Ereignis private-content-loaded zur Verfügung:

Die Seite selbst bleibt dabei im Full Page Cache. Nur die Daten der Customer Section werden unabhängig davon im Browser bereitgestellt und können individuell für den jeweiligen Besucher ausgegeben werden.

Unterschied zwischen “Private Section” und cacheable=”false”?
Sie benötigen Unterstützung bei der Umsetzung dieser Lösung oder Sie haben die passende Lösung für Ihr Magento Problem noch nicht gefunden? Kontaktieren Sie mich und ich helfe Ihnen bei Ihrem Magento Projekt!
Schlagwörter: