Разработка сайтов на UMI.CMS
Знать UMI.CMS в совершенстве невозможно.
Даже сами разработчики знают о ней не все...

UMi

Ursa Minor

Пример выборки заказов в интернет-магазине UMI.CMS

Пример выборки заказов в интернет-магазине UMI.CMS

Для примера выберем что-нибудь не сложное и не слишком примитивное. Пусть это будут заказы в магазине.

Будем выбирать заказы со статусом "Готово" (2759). Как получено это значение заморачиваться не будем, это отдельный вопрос.

$status = 2759;

$curr_page = (int) getRequest('p');
$per_page = 20;

$hierarchyTypes = umiHierarchyTypesCollection::getInstance();
$objectTypes = umiObjectTypesCollection::getInstance();

//определяем ид иерархии по имени объекта
//можно для упрощения подставить сюда ид напрямую, если он известен, но мы же тренируемся)
$iHierarchyTypeId = $hierarchyTypes->getTypeByName("eshop", "order")->getId();

//определяем ид типа объекта по ид иерархии
$iObjectTypeId = $objectTypes->getTypeByHierarchyTypeId($iHierarchyTypeId);

$sel = new umiSelection;
$sel->addLimit($per_page, $curr_page);
$sel->addObjectType($iObjectTypeId);//устанавливаем фильтр по типу объекта


//определяем ид полей времени заказа(по нему будем упорядочивать) и статуса заказа
$oObjectType = umiObjectTypesCollection::getInstance()->getType($iObjectTypeId);
$iOrderTimeId = $oObjectType->getFieldId('order_time');
$iStatus = $oObjectType->getFieldId('status');

//теперь можем задать упорядочение и фильтр
$sel->setOrderByProperty($iOrderTimeId, false);
$sel->addPropertyFilterEqual($iStatus, $status);

$res = umiSelectionsParser::runSelection($sel);
$total = umiSelectionsParser::runSelectionCounts($sel);

//выводим результат - массив ид объектов
if($res){
foreach($res as $id){
 echo $id.'<br>';

 }
}

Если выбираем только страницы, то нужно принудительно указать UMI.CMS выбирать только элементы иерархии

forceHierarchyTable(true);

 

Новости

30.10.2016

Обновлено описание макроса для вывода всех элементов справочника UMI.CMS с учетом версии 14.

 

21.07.2015

Памятка по обновлению до debian 8.1. Приятно вкусить все плюшки PHP 5.6

11.11.2014

Как выполнить SQL-запрос из bash-скрипта. Памятка

11.11.2014

Как отследить нагрузку сайта на сервер.

06.11.2014

Заготовка для галереи изображений с прокруткой. Не знаю, когда дойдут руки довести ее до вида плагина, поэтому открываю как есть. Можно доработать.

05.11.2014

Выкладываю как заготовку свой слайдер изображений на mootools

Все обновления