Question

Comment puis-je obtenir le titre dans shippingMethod mage / ventes / modèle / order.php, en fonction _beforeSave ()? En fait, je dois étiquette de jeu pour la description d'expédition.

Était-ce utile?

La solution

si vous avez l'objet de commande, vous pouvez obtenir la description de la livraison

$order = $observer->getEvent()->getOrder(); // or where ever the order is located in your observer event
echo $order->getShippingDescription();

Ou en option si vous voulez que toutes les données de la méthode d'expédition, vous devriez être en mesure de le récupérer via

$shipping = $order->getShippingAddress()->getShippingMethod();
var_dump($shipping->getData());

Autres conseils

$methods = Mage::getSingleton('shipping/config')->getActiveCarriers();
$options = array();
foreach($methods as $_code => $_method)
{
    if(!$_title = Mage::getStoreConfig("carriers/$_code/title"))
        $_title = $_code;

    $options[] = array('value' => $_code, 'label' => $_title . " ($_code)");
}
echo "<xmp>";
print_r($options);
echo "</xmp>";

Cela a fonctionné pour moi à la recherche du titre personnalisé:

$order         = Mage::getModel('sales/order')->loadByIncrementId($orderId);
$shippingTitle = $order->getTracksCollection()->getFirstItem()->getTitle();
$order->getShippingDescription(); // returns Shipping Method Title
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top