Question

J'essaie d'obtenir les détails de la commande par identifiant de commande dans mon code.Pour cela, j'ai créé un fichier php et copié ce fichier dans un dossier public_html.voici mon code :

<?php 
 error_reporting( E_ALL );
 require_once "lib/nusoap.php";
 require_once "../app/Mage.php";
  try {
   $order = Mage::getModel('sales/order')->load('100000234');
   $orderData = $order->getData();
   print_r($orderData);
  } catch (Exception $e) {
echo 'Caught exception: ',  $e->getMessage(), "\n";
  }
   ?>

Mais quand j'exécute ce code, il ne m'affiche "rien" !

j'ai essayé de var_dump($order), mais il ne montre également rien ni aucune erreur !

Quelqu'un peut-il m'aider à obtenir les détails de la commande et à les montrer ?

Merci

Était-ce utile?

La solution

Il y a du spécifique loadByIncrementId fonction de chargement à l’aide de l’identifiant d’incrément.

$order = Mage::getModel('sales/order')->loadByIncrementId('100000234');

Cependant, je ne pense pas que vous démarrez correctement Magento, ce qui expliquerait pourquoi vous n'obtenez pas nécessairement ce que vous voulez.Tout en incluant le app/Mage.php vous donnera accès à la classe Mage, cela ne démarrera pas réellement Magento.Vous devez lancer l'application, quelque chose comme ceci :

<?php 
    error_reporting( E_ALL );
    require_once "lib/nusoap.php";
    require_once "../app/Mage.php";
    Mage::app('admin');
    try {
        $order = Mage::getModel('sales/order')->loadByIncrementId('100000234');
        print_r($order->debug());
    } catch (Exception $e) {
        echo 'Caught exception: ',  $e->getMessage(), "\n";
    }

Autres conseils

Le numéro que vous utilisez est l'incrément_id

Dans magento, vous avez l'inctement_id séquentiel, qui est l'identifiant de commande visible.

En interne, magento utiliseentity_id, qui est utilisé pour lier les données.

Le ->load utilise l'entity_id par défaut.

Si vous changez votre code en

$order = Mage::getModel('sales/order')->load($incrementId, 'increment_id');

Vous devriez charger la commande.

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