J'ai un problème étrange et semble que beaucoup ont la même chose sur Internet. Au-dessous de la photo définira mon problème et que ma version magento est de 1,7 p>
p>
Comme je l'ai mis en surbrillance, la gauche indique que la catégorie dispose de 16 produits, mais dans l'onglet Produits de la catégorie indique 15 produits. Toutes mes catégories sont gâchées. S'il vous plaît laissez-moi savoir ce qui ne va pas. J'ai essayé de désactiver le cache, mais cela n'a pas fonctionné. P>
[modifier] p>
J'ai essayé de supprimer un produit à partir de la catégorie, puis le numéro de gauche est allé à 15 et totalis des enregistrements 14. Donc, je pensais être un produit dont il est désactivé dans cette catégorie. Mais quand j'ai cherché des produits handicapés, aucun n'était là. P>
3 Réponses :
HI Compte du produit provient du nom de la méthode LoadProDuccount qui est situé à l'emplacement Si vous creuserez Le nombre provient d'une requête de jointure entre deux tables: J'ai corrigé ce problème en utilisant l'observateur de l'événement. Vous pouvez faire la même chose pour le temps. Et laissez-moi savoir si vous trouvez une meilleure solution. P> événement utilisé dans config.xml p> Code / Core / Mage / Catalogue / Modèle / Ressource / Catégorie / Collection.PHP CODE>
catalog_category_product code> et
catalog_category_entity code> p>
Avez-vous dit que vous aviez le même problème?
Oui, je faisais face au même problème dans Magento 1.7 CE. En quelque sorte après la suppression du produit, l'entrée n'était pas supprimée de la table catalog_category_product.
Quel événement observez-vous?
@ROSHANLAL Avez-vous créé un module personnalisé pour cela?
Cela les corrigera tous.
DELETE FROM catalog_category_product where product_id NOT IN (SELECT entity_id FROM (catalog_product_entity))
Une solution simple à ceci est d'aller à l'application / code / noyau / mage / catalogue / modèle / catégorie.php
ou il est préférable de créer un fichier local afin que cela ne soit pas effacé pendant la mise à niveau de Magento. Donc créer App / Code / Local / Mage / Catalogue / Modèle / Category.php P>
Dans ce modèle Créez une nouvelle fonction Dites GetFrontentProductCount () p>
<ol> <?php foreach ($_categories as $_category): ?> <?php if($_category->getIsActive()): ?> <li> <a href="<?php echo $this->getCategoryUrl($_category) ?>"<?php if ($this->isCategoryActive($_category)): ?> class="current"<?php endif; ?>><?php echo $this->htmlEscape($_category->getName()) ?></a> (<?php echo $_category->getFrontentProductCount() ?>) </li> <?php endif; ?> <?php endforeach ?> </ol>