Domanda

Per quanto riguarda la risposta da Vinai qui https://magento.stackexchange.com/a/5775/199 ho una domanda di follow-up:

Come posso ottenere l'allineamento ProductPosition quando uso categoria piatto tabelle?

Nella mia configurazione di sistema che uso queste impostazioni:

Catalog -> Frontend -> Use Flat Catalog Category = yes
Catalog -> Frontend -> Use Flat Catalog Product  = yes

Quando uso getProductsPosition() ricevo il seguente:

Fatal error: Call to undefined method  Mage_Catalog_Model_Resource_Category_Flat::getProductsPosition() in [...]/app/code/core/Mage/Catalog/Model/Category.php on line 318

Tutte le idee?

Grazie in anticipo:)

È stato utile?

Soluzione

Questo dovrebbe funzionare.

$categoryId = '46'; //replace with your own
$category = Mage::getModel('catalog/category')->load($categoryId);
$positions = Mage::getResourceModel('catalog/category')->getProductsPosition($category);

Questa ignora il flag 'categorie Flat'. Si va direttamente al modello categoria di risorse.

È possibile anche saltare il carico categoria per le prestazioni. e solo passare come parametro un oggetto che ha un parametro id.

$categoryId = '46'; //replace with your own
$category = new Varien_Object(array('id'=>$categoryId));
$positions = Mage::getResourceModel('catalog/category')->getProductsPosition($category);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top