Question

Problème

J'ai un problème étrange avec mon url_key le champ revenant à NULL sur mon catalog_category_flat_store_1 Tableau suivant un Reindex, mais uniquement sur les catégories que j'ai créées depuis l'activation de l'indice de catégorie plate.

En conséquence, lorsque j'essaie de récupérer la catégorie via url_key comme c'est ainsi:

    $category = Mage::getModel('catalog/category')
        ->getCollection()
        ->addAttributeToFilter('url_key', 'my-url-key')
        ->getFirstItem();

    $category->load($category->getId());

Je ne peux pas le faire. Si je reviens en arrière et que je réévalue la catégorie, l'URL_KEY est ajouté à la table plate et je suis en mesure de récupérer la catégorie.

Quelqu'un d'autre a-t-il eu ce problème ou est-ce que je manque quelque chose concernant le fonctionnement des tables plates?

Ce que j'ai trouvé / essayé

Étant donné que la valeur serait initialement enregistrée puis disparaîtrait, j'ai examiné les fichiers catalog_category_entity. Voici ce que j'ai trouvé:

  1. La url_key la valeur est enregistrée correctement dans catalog_category_entity_url_key
  2. Cependant, ni le url_key ni le url_path Les attributs économisent catalog_category_entity_varchar Comme ils étaient avec des catégories que j'ai créées avant d'activer des tables plates.
  3. Si je manuellement ajouter le url_key à catalog_category_entity_varchar, les valeurs sont conservées et copiées pour catalog_category_flat_store_1 Comme prévu lors de la réindexer.

J'ai essayé de désactiver les tables plates et tandis que le url_key La valeur n'est toujours pas enregistrée dans catalog_category_entity_varchar, je peux catégoriser via URL_KEY en utilisant mon code ci-dessus.

FWIW, j'utilise Enterprise 1.13.

Mise à jour

J'ai utilisé Magmi pour importer mes produits / catégories; Parce que CE utilise varchar Les attributs plutôt que comme une table distincte comme les versions plus récentes de l'entreprise le font, cela peut être un non-problème. J'ai créé une nouvelle installation d'entreprise et ajouté les catégories manuellement. Je remarque que le url_key et url_path des champs ne sont pas copié sur les tables plates de toute façon.

Pas de solution correcte

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