bhoernchen
Mitglied
Ich habe das Template der Produktdaten durch eine Plugin-Funktion in die (Details.tpl) erweitert.
{Plugin\xxx_Produkte\xxx_xxxxxxHersteller::testPluginCache()}
Nun würde ich die Ausgabe gerne cachen, da das System dies scheinbar nicht von selbst macht. Ich habe jedoch ein Problem mit der Aktualisierung des Artikels, wenn der Shop über den Connector neue Daten von der WaWi (Warenwirtschaft) erhält.
Ich kann über den Tag CACHING_GROUP_OPTION dem Cache mitteilen, dass dieser Cache die Artikel für folgende Produkte enthält: 'product_id_' . $productId und 'product_number_' . $productNumber. Das funktioniert soweit.
$instance->cache->set($cacheID, $artikelHTML, [CACHING_GROUP_OPTION, $instance->getArtikelCacheTag()]);
Allerdings weiß ich nicht, wie und wo ich den Cache nach einem Update des Produktes von der WaWi löschen muss. Das Konzept verstehe ich noch nicht ganz (Anfänger). Da ich mir die Tags im Grunde selbst ausgedacht habe, müsste ich wahrscheinlich eine Funktion schreiben, um den Cache zu invalidieren. Oder es gibt vielleicht feste Tags, die ich verwenden könnte. Es wäre auch über einen Hook machbar, aber ich kenne keinen geeigneten Hook dafür.
Es gibt viele Möglichkeiten, aber ich sehe noch keinen klaren Ansatz, wie ich das umsetzen kann.
{Plugin\xxx_Produkte\xxx_xxxxxxHersteller::testPluginCache()}
Nun würde ich die Ausgabe gerne cachen, da das System dies scheinbar nicht von selbst macht. Ich habe jedoch ein Problem mit der Aktualisierung des Artikels, wenn der Shop über den Connector neue Daten von der WaWi (Warenwirtschaft) erhält.
Ich kann über den Tag CACHING_GROUP_OPTION dem Cache mitteilen, dass dieser Cache die Artikel für folgende Produkte enthält: 'product_id_' . $productId und 'product_number_' . $productNumber. Das funktioniert soweit.
$instance->cache->set($cacheID, $artikelHTML, [CACHING_GROUP_OPTION, $instance->getArtikelCacheTag()]);
Allerdings weiß ich nicht, wie und wo ich den Cache nach einem Update des Produktes von der WaWi löschen muss. Das Konzept verstehe ich noch nicht ganz (Anfänger). Da ich mir die Tags im Grunde selbst ausgedacht habe, müsste ich wahrscheinlich eine Funktion schreiben, um den Cache zu invalidieren. Oder es gibt vielleicht feste Tags, die ich verwenden könnte. Es wäre auch über einen Hook machbar, aber ich kenne keinen geeigneten Hook dafür.
Es gibt viele Möglichkeiten, aber ich sehe noch keinen klaren Ansatz, wie ich das umsetzen kann.
Zuletzt bearbeitet: