Тема: как вывести количество заказов пользователя
Подскажите пожалуйста как вместо ID пользователя в это поле вывести количество совершенных им заказов?
Как я понимаю нужно что-то вставить в order_user_cell.tpl ? А вот что именно?
Форум ReadyScript Вопросы по работе с системой как вывести количество заказов пользователя
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Подскажите пожалуйста как вместо ID пользователя в это поле вывести количество совершенных им заказов?
Как я понимаю нужно что-то вставить в order_user_cell.tpl ? А вот что именно?
Вам надо вызвать статическую функцию при помощи static_call из своего модуля, где в функции надо вызвать апи заказов вот так:
$order_api = new \Shop\Model\OrderApi();
$order_count = $order_api->getUserOrdersCount(id вашего пользователя);
return $order_count;
По ходу я не шарю в синтаксисе
Попытался сделать по инструкции, что-то не вышло
{$user=$order->getUser()}
{$user->getFio()} <span class="cell-sgray">({$cell->getValue()})
{static_call var=result callback=[$order_api = new \Shop\Model\OrderApi(); $order_count = $order_api->getUserOrdersCount(id вашего пользователя);return $order_count;]}{$result}
</span>
То что вы написали это вообще не то. Вам надо как я и насал вызвать статическую публичную функцию из своего дополнительного модуля.
{static_call var=result callback=['Путь к классу апи Вашего модуля','функция которая должна отработать'] params=['id пользователя']}
Предлоложим у Вас есть дополнительный модуль с именем custom, который вы создали. Если у нём будет лежать класс с Вашим API(набором функций). То к нему можно будет обратиться примерно так:
{static_call var=result callback=['\Custom\Mode\Api','getUserOrderCulc'] params=[$user.id]}
Соответственно код Вашего класса должен быть примерно таким:
<?php
namespace Custom\Model;
class Api
{
/**
* Подсчитывает количество заказов у пользователя
* @param integer $user_id - идентификатор пользователя
*/
public static function getUserOrdersCount($user_id){
$order_api = new \Shop\Model\OrderApi();
$order_count = $order_api->getUserOrdersCount($user_id);
return $order_count;
}
}
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форум ReadyScript Вопросы по работе с системой как вывести количество заказов пользователя