Question

J'essaie de comprendre pourquoi un site Magento Enterprise affiche le même article quatre fois dans la section « Article connexe » de la page.

CORRECT COMPORTEMENTS:
- Après les caches de compensation, quatre différents éléments sont indiqués sur la première page de chargement (ce qui est le comportement correct)

PROBLÈME: - des charges de pages supplémentaires montrent pas seulement les quatre mêmes éléments, mais le exactement le même élément répété quatre fois (voir capture d'écran)
- L'élément qui se répète est toujours le dernier élément qui a été affiché dans la charge de la page originale. En d'autres termes, s'il y a, b, c, d articles connexes figurant sur la première page de chargement après une fush de cache, il est « d » qui sera répété quatre fois sur les charges de page future. d, d, d, d

Même point exact répété quatre fois

CONTEXTE:
- Page utilise un thème personnalisé
. - Ce problème ne se produit lorsque la mise en cache de la page complète est activée
. - Si la page est revenu sur le thème « par défaut », le problème ne se produit plus, même avec la mise en cache pleine page activée
- Pour résumer: le problème se produit uniquement avec le thème personnalisé et la mise en cache pleine page activée
- Magento Enterprise ver. 1.13.0.0

La partie des produits de la page est insérée avec le code suivant:

<?php echo $this->getChildHtml('relatedProducts', false) ?>

Je serais reconnaissant:
- Une avance spécifique sur ce problème peut être ce
- des moyens fiables pour désactiver un cache spécifique lié à cette
(GUI Dans le code dans le terminal??) - Tests et mesures que je peux prendre pour restreindre celui-ci à coder, db ou fichiers

.

Merci d'avance!

Était-ce utile?

La solution

Il est apparu que nous avions créé une version locale de la valeur par défaut related.phtml fichier qui a été utilisé comme modèle pour le bloc d'éléments connexes. Dans ce code, il y a cette ligne dans une boucle:

$itemBlock = $this->getChild('catalog.product.related.item')->setItem($_item)->setPosition($i);
Notez la variable $ i à la fin de la ligne.
Cette variable n'a pas été incrémenté ailleurs dans le code. J'ai ajouté $i = 0; avant que la boucle et $i++; à l'emplacement approprié dans la boucle. Avec la variable $ i maintenant incrémenter, le problème de l'article répéter a été résolu.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top