Страница 1 из 1

Вывод товаров в случайном порядке

Добавлено: 11.12.2019, 09:27
Andrijk
Добрий день

підкажіть як реалізувати виведення товарів в випадковому порядку
в старій версії OkayCMS вносив правки в файл api/Products.php

Код: Выделить всё

if(!empty($filter['sort']))
         switch ($filter['sort'])
         {
добавляв

Код: Выделить всё

case 'random':
            $order = 'RAND()';
            break;
і використовував

Код: Выделить всё

{get_featured_products var=featured_products limit=3 sort=random}


як в 3 версії (куда копать)

Добавлено: 11.12.2019, 09:50
zyxer
нужно в файлах
Okay/Core/SmartyPlugins/Plugins/GetFeaturedProducts.php, Okay/Core/SmartyPlugins/Plugins/GetDiscountedProducts.php заменить строку

Код: Выделить всё

$products = $this->productsHelper->getProductList($params);

на

Код: Выделить всё

$sort = isset($params['sort']) ? $params['sort'] : null;
$products = $this->productsHelper->getProductList($params, $sort);


В файле Okay/Core/SmartyPlugins/Plugins/GetNewProducts.php нужно заменить на

Код: Выделить всё

$sort = isset($params['sort']) ? $params['sort'] : 'created_desc';
$products = $this->productsHelper->getProductList($params, $sort);


и использовать так:

Код: Выделить всё

{get_featured_products var=featured_products limit=5 sort=rand}


Это будет добавлено в новых версиях.

Добавлено: 11.12.2019, 11:33
Andrijk
Дякую!!!
Працює

Добавлено: 19.12.2019, 10:49
OkayCMS
Добавили в версию 3.3.3 viewtopic.php?f=5&t=1605