support 446 Posted April 20, 2018 Report Share Posted April 20, 2018 В данной заметке расскажу как добавить среди списка товара рекламу, в произвольном месте. т.е. среди "плиток" с товаром, в произвольном месте, можно будет выводить любой рекламный, информационный блок. Вот пример как это может выглядеть в магазине: Т.е. среди товаров в любой категории, в случайном месте добавляется блок. Открываем файл /app/Catalog/function.content_listing.php Ищем: $vars = $template->smarty->tpl_vars; $vars['content_list'] = $content_list; Добавляем НАД этим кодом: if ($params['template'] == "product-listing") { $rand = rand(0,$config['PRODUCTS_PER_PAGE']); $content_list_ad[$rand]['name'] = 'тест'; $content_list_ad[$rand]['description'] = 'описание'; $content_list_ad[$rand]['short_description'] = 'краткое описание'; $content_list_ad[$rand]['meta_title'] = ''; $content_list_ad[$rand]['meta_description'] = ''; $content_list_ad[$rand]['meta_keywords'] = ''; $content_list_ad[$rand]['id'] = 0; $content_list_ad[$rand]['parent_id'] = 9999; $content_list_ad[$rand]['alias'] = 'ads'; $content_list_ad[$rand]['price'] = false; $content_list_ad[$rand]['old_price'] = false; $content_list_ad[$rand]['price_save'] = false; $content_list_ad[$rand]['price_save_percent'] = false; $content_list_ad[$rand]['discount'] = 0; $content_list_ad[$rand]['rating'] = 0; $content_list_ad[$rand]['star_rating'] = 0; $content_list_ad[$rand]['reviews'] = 0; $content_list_ad[$rand]['stock'] = 0; $content_list_ad[$rand]['model'] = 'ads'; $content_list_ad[$rand]['weight'] = 0; $content_list_ad[$rand]['length'] = false; $content_list_ad[$rand]['width'] = false; $content_list_ad[$rand]['height'] = false; $content_list_ad[$rand]['volume'] = false; $content_list_ad[$rand]['manufacturer'] = false; $content_list_ad[$rand]['manufacturer_url'] = false; $content_list_ad[$rand]['label_id'] = false; $content_list_ad[$rand]['date_added'] = CakeTime::i18nFormat(time()); $content_list_ad[$rand]['date_modified'] = CakeTime::i18nFormat(time()); $content_list_ad[$rand]['viewed'] = 0; $content_list_ad[$rand]['image'] = '/img/content/noimage-250.png'; $content_list_ad[$rand]['image_original'] = '/img/content/noimage.png'; $content_list_ad[$rand]['image_width'] = 250; $content_list_ad[$rand]['image_height'] = 250; $content_list_ad[$rand]['url'] = '/page/test.html'; $content_list_ad[$rand]['attributes'] = null; $content_list = array_replace($content_list, array($rand => $content_list_ad[$rand])); ksort($content_list); } Всё. Теперь укажите свои данные для рекламного блока в опциях: $content_list_ad[$rand]['name'] = 'тест'; $content_list_ad[$rand]['description'] = 'описание'; $content_list_ad[$rand]['short_description'] = 'краткое описание'; $content_list_ad[$rand]['image'] = '/img/content/noimage-250.png'; $content_list_ad[$rand]['image_original'] = '/img/content/noimage.png'; $content_list_ad[$rand]['image_width'] = 250; $content_list_ad[$rand]['image_height'] = 250; $content_list_ad[$rand]['url'] = '/page/test.html'; Это начальный вариант. Рекомендую ещё сделать всё через настройки в Админке - Настройки - Магазин. Добавить новые настройки, что б содержание этого блока можно было задавать через админку. Исправленный файл /app/Catalog/function.content_listing.php так же прицепил к сообщению. function.content_listing.php Link to post Share on other sites
Recommended Posts