Jump to content
  • 0

Śledzenie paczek URL {followup}


() Maciej ()

Question

Napotkałem dość wkurzający mnie błąd w wersji 1.6.0.9 i starszych (na chwilę obecną jeszcze nie testowałem nowszych wersji). A mianowicie w mailu in_transit który powinien zawierać link do śledzenia paczki nie mam nic.

Zmienna followup jest pusta :/

Sprawdziłem czy są poprawne linki URL w zakładkach przewoźników, zastosowałem się też do tematów :

https://www.prestashop.com/forums/topic/266296-rozwiazany-sledzenie-przesylki/?hl=%2B%C5%9Bledzenie

https://www.prestashop.com/forums/topic/280497-poczta-polska-%C5%9Bledzenie-przesy%C5%82ki-czy-dzia%C5%82a-wam-poprawnie-v-1550/

i kilkunastu innych tematów mówiących o śledzeniu przesyłek.

 

O ile zastosowanie zmiennej shipping_number w mailu nie stanowi żadnego problemu, bo wyświetla się prawidłowo. O tyle mając kilku przewoźników w 1 sklepie nie mogę sobie pozwolić na wklepanie na stałe linku do śledzenia, do którego będę dopisywał zmienną shipping_number, bo nie będzie to ładnie wyglądać jak będzie kilka linków. Z czego tylko 1 będzie działał.

 

Czy ktoś z Was może miał podobny problem i go rozwiązał ? Jak prawidłowo wyświetlić zmienną followup w mailu?

Edited by () Maciej () (see edit history)
Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Niekompatybilność szablonu + jakiś moduł, który nie działa na nowszej wersji. Trzeba by wykupić jego aktualizację za ok 150 dolców (posiada zabezpieczenie wersji i w przypadku wgrania nowszej wersji sklepu moduł przestaje działać - plik szyfrowany więc nawet nie ma jak go zedytować), albo znaleźć zamiennik.

No nic... miałem nadzieję na szybkie załatwienie sprawy, ale widzę, że się nie obejdzie bez grubszej roboty :)

Dzięki wielkie za pomoc.

Link to comment
Share on other sites

  • 0

Ta zmienna jest "produkowana" tylko przez AdminOrdersController.

A konkretnie do maila jest generowana przez funkcję postProcess() przez ten fragment kodu:

                   // Update order_carrier
                    $order_carrier->tracking_number = pSQL(Tools::getValue('tracking_number'));
                    if ($order_carrier->update()) {
                        // Send mail to customer
                        $customer = new Customer((int)$order->id_customer);
                        $carrier = new Carrier((int)$order->id_carrier, $order->id_lang);
                        if (!Validate::isLoadedObject($customer)) {
                            throw new PrestaShopException('Can\'t load Customer object');
                        }
                        if (!Validate::isLoadedObject($carrier)) {
                            throw new PrestaShopException('Can\'t load Carrier object');
                        }
                        $templateVars = array(
                            '{followup}' => str_replace('@', $order->shipping_number, $carrier->url),
                            '{firstname}' => $customer->firstname,
                            '{lastname}' => $customer->lastname,
                            '{id_order}' => $order->id,
                            '{shipping_number}' => $order->shipping_number,
                            '{order_name}' => $order->getUniqReference()
                        );
                        if (@Mail::Send((int)$order->id_lang, 'in_transit', Mail::l('Package in transit', (int)$order->id_lang), $templateVars,
                            $customer->email, $customer->firstname.' '.$customer->lastname, null, null, null, null,
                            _PS_MAIL_DIR_, true, (int)$order->id_shop)) {
                            Hook::exec('actionAdminOrdersTrackingNumberUpdate', array('order' => $order, 'customer' => $customer, 'carrier' => $carrier), null, false, true, false, $order->id_shop);
                            Tools::redirectAdmin(self::$currentIndex.'&id_order='.$order->id.'&vieworder&conf=4&token='.$this->token);
                        } else {
                            $this->errors[] = Tools::displayError('An error occurred while sending an email to the customer.');
                        }
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...