Список последних получателей
annaoomph
Новичок
: 34
: 06-06-2015


23-06-2015 17:43
Добрый день! Подскажите, как получить через smarty список последних получателей товаров?
 
 
Алекс


Администратор
: 4516
: Красноярск
: 29-05-2009


23-06-2015 20:24
Получить заказы с определённым статусом (например: Доставлено):
Откройте файл /classes/controller/FrontController.php
после:
Код:
$compared_products = array();
if (Configuration::get('PS_COMPARATOR_MAX_ITEM') && isset($this->context->cookie->id_compare))
    $compared_products = CompareProduct::getCompareProducts($this->context->cookie->id_compare);

добавьте:
Код:
if ($so = Order::getOrderIdsByStatus(5))
{
    $so = Db::getInstance()->ExecuteS('
        SELECT o.`id_order`, CONCAT(LEFT(a.`firstname`, 1), \'. \', a.`lastname`) AS `customer` FROM '._DB_PREFIX_.'orders o
        LEFT JOIN `'._DB_PREFIX_.'address` a ON a.id_address = o.id_address_delivery
        WHERE o.`id_order` IN ('.implode(',', array_map('intval', $so)).')');
}


после:
Код:
'link' => $link,

добавьте:
Код:
'so' => $so,


В любой шаблон добавьте:
Код:
{if isset($so) && $so}
{foreach from=$so item=o}
    {$o.id_order}
    {$o.customer}
{/foreach}
{/if}


Правильный способ:
Написать отдельный модуль, который будет отслеживать изменение статуса заказа и при определённых статусах генерировать список заказов и отображать его с кешированием данного блока.