[Инфо] Рандомные товары из всей БД через списки

KPACHODAP

DELETED
Регистрация
21 Дек 2009
Сообщения
683
Реакции
312
Добрый день друзья, решил с вами поделиться долго думал как реализовать вывод товаров на главную из всей БД webasyst а также на странице товара. Вот решение не судите строго, но вроде работает!

Создаем списки:
randomlist - формирование рандомного списка на странице товара
slideoffers - формирование рандомного списка для главной и других страниц из всей бд!


в файле /published/SC/html/scripts/classes/class.productlist.php

нужно вставить так чтобы выглядело в функции getProducts

PHP:
    function getProducts($enabled = null){
   // randomlist - формирование рандомного списка на странице товара
    if ($this->id == 'randomlist' && isset ($_GET['productID'])){
  $product_info = getProduct($_GET['productID']);
  $dbq = 'SELECT t1.*, t3.thumbnail FROM ?#PRODUCTS_TABLE t1 LEFT JOIN ?#PRODUCT_PICTURES t3 ON t1.default_picture=t3.photoID WHERE'.(is_null($enabled)? '':' t1.enabled='.intval($enabled).' AND t1.categoryID = '.$product_info['categoryID']).' ORDER BY RAND() LIMIT 3';
 
} else if ($this->id == 'slideoffers'){
// slideoffers - формирование рандомного списка для главной и других страниц из всей бд!
  $dbq = '
            SELECT t1.*, t3.thumbnail FROM ?#PRODUCTS_TABLE t1 LEFT JOIN ?#PRODUCT_PICTURES t3 ON t1.default_picture=t3.photoID WHERE t1.categoryID != 0 ORDER BY RAND() LIMIT 25';
 
}
else{
// остальные списки из выбраного!
  $dbq = '
    SELECT t1.*, t3.thumbnail FROM ?#PRODUCTS_TABLE t1 LEFT JOIN ?#TBL_PRODUCT_LIST_ITEM t2 ON t1.productID=t2.productID
    LEFT JOIN ?#PRODUCT_PICTURES t3 ON t1.default_picture=t3.photoID
    WHERE'.(is_null($enabled)?'':' t1.enabled='.intval($enabled).' AND t1.categoryID != 1 AND').' t2.list_id=? ORDER BY t2.priority ASC
  ';
}

Не судите строго я не программист, кому помог рад!
 
Назад
Сверху