Magento – Dienstleister im Dropdown bei Trackingnummer hinzufügen

Picture

Verschickt man eine Sendung aus dem Magento Shop, kann man über die Versandinformation eine Trackingnummer sowie einen Dienstleister wie DHL, GLS, DPD o.a. add.

Hierzu trägt man einfach händisch den Titel und die Sendungsnummer in die beiden Felder ein, da der gewünschte Dienstleister im Dropdown nicht angezeigt wird. Und so hat man jedes Mal den Aufwand des händischen Eintragens.

Warum tauchen die im Backend hinterlegten Versandmethoden nicht im Dropdown auf? This may be because, dass sie nach Ansicht des Systems nicht in der Lage sind eine Trackingnummer zu erhalten. Dies Anzeige und Überprüfung kommt aus der Datei

Tracking.php

welche im Verzeichnis

app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create

is. Dort gibt es den Code

    public function getCarriers()
    {
        $carriers = array();
        $carrierInstances = Mage::getSingleton('shipping/config')->getAllCarriers(
            $this->getShipment()->getStoreId()
        );
        $carriers['custom'] = Mage::helper('sales')->__('Custom Value');
        foreach ($carrierInstances as $code => $carrier) {
            if ($carrier->isTrackingAvailable()) {
                $carriers[$code] = $carrier->getConfigData('title');
            }
        }
        return $carriers;
    }

by

foreach ($carrierInstances as $code => $carrier) {

wird nun abgefragt, ob es sich um einen Dienstleister handelt, der eine Sendungsnummer erhalten kann. Um dies nun zu umgehen und alle Dienstleister anzeigen zu lassen, wird nun die “if” Funktion entfernt. So verbleibt dann nur noch

    public function getCarriers()
    {
        $carriers = array();
        $carrierInstances = Mage::getSingleton('shipping/config')->getAllCarriers(
            $this->getShipment()->getStoreId()
        );
        $carriers['custom'] = Mage::helper('sales')->__('Custom Value');
        foreach ($carrierInstances as $code => $carrier) {
                $carriers[$code] = $carrier->getConfigData('title');
        }
        return $carriers;
    }

und damit werden dann alle verfügbaren Dienstleister angezeigt (nicht die eine Klammer am Schluss vergessen).

Used in Magento Version 1.7. Ask, Comments, Proposals? Us directly or as a comment.

Published by Covos

Since 2009 I have been working intensively with Magento. I started with the creation and operation of B2C stores. This was extended through my work in the logistics sector. This resulted first specialized B2E systems. Today I work day-a day with exciting B2C, B2B- and B2E projects and reports in this blog about challenges and give insider tips.

2 comments on “Magento – Dienstleister im Dropdown bei Trackingnummer hinzufügen”

  1. Eure Anleitung hat bei mir super funktioniert, sodass ich mir diese Seite direkt als
    Lesezeichen gesetzt habe.

    Die Dienstleister so anzuzeigen verhindert einen Vertipper bei der händischen Eingabe und geht zudem schneller von der Hand als jedes Mal den Name auszuschreiben.

Leave a Reply

Your email address will not be published. Required fields are marked *