Load product by SKU sur Magento

février 19th, 2013 | by | magento

Fév
19

Je me suis heurté à un petit problème lors d'un développement d'import de commande sur Magento depuis un fichier XML.

Ne connaissant pas l'id du produit mais ayant le SKU, il m'est naturellement venu à l'idée d'utiliser :

$product = Mage::getModel(‘catalog/product’)->loadByAttribute(‘sku’,'PRODUCT_SKU’);

Tout fonctionnait bien jusqu'à l'import d'une commande dont un des produits était désactivé car plus en stock. J'ai pensé à faire des requêtes externes au Framework mais voici "l'astuce" :

$product = Mage::getModel(‘catalog/product’);
$productId = $product->getIdBySku(‘PRODUCT_SKU’);
if ($productId) {
$product->load($productId);
}

On récupère d'abord l'id du produit par son SKU puis on charge le produit et là ça fonctionne.
Je peux donc diminuer mon stock dans les négatifs, ce qui n'est pas forcément une bonne chose...

Authored by

Laisser un commentaire