Bonjour,
J'ai développé un block qui affiche des produits, dont les ids sont encodés dans la config via l'admin.
J'ai ajouté du cache dans l'xml config et une clé de cache via le code du block.
J'affiche celui-ci 2 fois sur la même page avec des produits différents et le deuxième affichage n'est pas rendu correctement au niveau des blocks catalog_product contenu dans le template (affiche {_BLOCK_0_} {_BLOCK_1_} {_BLOCK_2_} {_BLOCK_3_} {_BLOCK_4_} {_BLOCK_5_}).
Voici la ligne de config
<block type="modules_slider_SlideList" cache="true" cache-key="cmpref" icon="">
et la fonction dans le block
public function getCacheKeyParameters($request) {
$config = $this->getConfiguration();
$keys = array();
$keys['blockId'] = $this->getBlockId();
$keys['productIds'] = implode('_',$config->getProductsIds());
$keys['display'] = $config->getDisplayTypeOfSlide();
return $keys;
}
Voici le block inclus posant problème :
<li tal:repeat="product products" class="product-line">
<tal:block module="catalog" container="" name="ProductItem" displayMode="ShortSelection"
change:block="cmpref product; displayConfig displayConfig/itemconfig; shop shop" />
</li>
Une idée?