У части продуктов включается опция
- Под заказ - когда стоимость товара 0
- В архиве - когда кол-во товара 0
Данные товары необходимо перенести в конец списка товаров, но с учетом выбранной сортировки пользователя на сайте.
Редактируем файл:
components/com_jshopping/lib/jtableauto.php
Нужна функция:
function getBuildQueryOrderListProduct($order, $orderby, &$adv_from){
$order_query = "";
if (!$order) return $order_query;
$order_original = $order;
$jshopConfig = JSFactory::getConfig();
$multyCurrency = count(JSFactory::getAllCurrency());
if ($multyCurrency>1 && $order=="prod.product_price"){
if (strpos($adv_from,"jshopping_currencies")===false){
$adv_from .= " LEFT JOIN `#__jshopping_currencies` AS cr USING (currency_id) ";
}
if ($jshopConfig->product_list_show_min_price){$order = "prod.min_price";}
else{$order = "prod.product_price";}
}
if ($order=="prod.product_price" && $jshopConfig->product_list_show_min_price){
$order = "prod.min_price";
}
$order_query = " ORDER BY unlimited desc,(CASE WHEN product_price=0 THEN 0 WHEN product_quantity*unlimited=0 THEN 0 ELSE 1 END) desc,".$order;
if ($orderby){
$order_query .= " ".$orderby;
}
JPluginHelper::importPlugin('jshoppingproducts');
$dispatcher = JDispatcher::getInstance();
$dispatcher->trigger('onBuildQueryOrderListProduct', array($order, $orderby, &$adv_from, &$order_query, $order_original) );
return $order_query;
}