Ответить Новая тема Новый опрос 
 Новые товары на свое усматрение
Michel II
Профессионал
Сообщений: 473
Регистрация: 08-06-2012


17-05-2015 05:58
Здравствуйте. Хотелось бы уметь управлять блоком новых товаров.
Не очень нравится, что со временем они исчезают. А кроме того при заведении новых товарных позиции не всегда хочется выводить ВСЕ новые товары. Особенно, если это товары разных категорий.

Хотелось бы в этот блок размещать товары по своему усматрению.
Наверное что то типа "спецпредложений" - товары, которые лежат в корне админки.

Может модуль какой есть?
Есь ли какая информация?
 



preatashop v1.4.10
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


17-05-2015 19:02
Правильный вариант: написать модуль, добавляющий в карточку товара (панель управления) переключатель (новый / нет).

Простой вариант: воспользоваться стандартным функционалом, например "Только на сайте" ("online_only").
1. В карточке товара установите "Только на сайте" на необходимые товары.
2. Откройте файл /modules/blocknewproducts/blocknewproducts.php найдите и замените метод hookRightColumn на:
Код:
public function hookRightColumn($params)
    {
        global $smarty;

        $result = Db::getInstance()->ExecuteS('
        SELECT p.*, pl.`description`, pl.`description_short`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, p.`ean13`, p.`upc`, i.`id_image`, il.`legend`, t.`rate`, m.`name` manufacturer_name
        FROM `'._DB_PREFIX_.'product` p
        LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (p.`id_product` = pl.`id_product` AND pl.`id_lang` = '.(int)$params['cookie']->id_lang.')
        LEFT OUTER JOIN `'._DB_PREFIX_.'product_attribute` pa ON (p.`id_product` = pa.`id_product` AND `default_on` = 1)
        LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = p.`id_product` AND i.`cover` = 1)
        LEFT JOIN `'._DB_PREFIX_.'image_lang` il ON (i.`id_image` = il.`id_image` AND il.`id_lang` = '.(int)$params['cookie']->id_lang.')
        LEFT JOIN `'._DB_PREFIX_.'tax_rule` tr ON (p.`id_tax_rules_group` = tr.`id_tax_rules_group` AND tr.`id_country` = '.(int)Country::getDefaultCountryId().' AND tr.`id_state` = 0)
        LEFT JOIN `'._DB_PREFIX_.'tax` t ON (t.`id_tax` = tr.`id_tax`)
        LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON (m.`id_manufacturer` = p.`id_manufacturer`)
        WHERE p.`active` = 1 AND p.`online_only` = 1 LIMIT 10');

        $newProducts = Product::getProductsProperties((int)$params['cookie']->id_lang, $result);
        if (!$newProducts AND !Configuration::get('PS_BLOCK_NEWPRODUCTS_DISPLAY'))
            return;
        $smarty->assign(array('new_products' => $newProducts, 'mediumSize' => Image::getSize('medium')));

        return $this->display(__FILE__, 'blocknewproducts.tpl');
    }
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос