[Mod] Лейблы на товарах

a33

Гуру форума
Регистрация
8 Сен 2006
Сообщения
223
Реакции
58
Представляю свой модуль для вебасист шопскрипта (я не программист).

И так, хочется, чтобы в каталоге на картинках товара были лейблы "SALE" или любые другие.
o9ltnr.jpg

в каталоге выглядит это так (весь скрин не палю, чтобы не палить свои магазы).

Код:
Туториал

1) Исполняем запрос в базу данных
ALTER TABLE `SC_products` ADD `my_star` INT NOT NULL


2) Регистрируем переменную в методах
\published\SC\html\scripts\modules\products\_methods\b_product_settings.php
строка примерно 58
после
$productEntry->free_shipping = $this->getData('free_shipping');
добавить

$productEntry->my_star = $this->getData('my_star');


3) Регистрируем в классах
\public_html\published\SC\html\scripts\classes\class.product.php

после  (примерно 36 строка)
var $vkontakte_update_timestamp;

добавить

var $my_star;


4) Теперь добавим вывод галочки в админке в редактировании продукта
\published\SC\html\scripts\templates\backend\product_settings.html

после:
    {if $smarty.const.CONF_CHECKSTOCK eq 1}
    <tr>
        <td>{lbl_str_in_stock}: </td>
        <td><input type="text" name="in_stock" value="{$is|escape:'html'}" size="6" /></td>
    </tr>
    {/if}

добавить:

    <tr>
        <td>Моя звездочка: </td>
        <td><input type="checkbox" name="my_star" value="1" {if $product.recomcheck}checked{/if} /></td>
    </tr>
    

5) делаем вывод в категории (этот код добавляем в див, который за изображения отвечает. Не спрашивайте где это именно, у меня все переделано и от оригинального файла мало что осталось. Если хоть чуть-чуть понимаете html-сделаете, если не разбираетесь, то не сделаете :) )
\published\SC\html\scripts\templates\frontend\product_brief.html

<div class="product-icons">
    {if $product_info.my_star}
    <a {$target} href="{$_product_url}" class="icon-my_star" alt="Смотрите видео" title="Смотрите видео">&nbsp;</a> <!-- тут ссылочка на товар при клике на звездочку, кому не надо, меняете на без ссылки -->
    {/if}
</div>


6) Выводим на странице товара:
Повторяем предыдущий шаг в файле
\public_html\published\publicdata\ВАШ-КОД-БД\attachments\SC\themes\ВАШ-КОД-ТЕМЫ\product_info.html

- где именно там картинки у вас я не знаю, у меня переделан вывод картинок. Вобщем туда вставляете куда ни будь. ) только не спрашивайте как подовинуть влево или вправо иконку. Сами делайте, модуль бесплатный, без поддержки пользователей.


7) добавим в КОНЕЦ CSS, который лежит в вашей теме.
путь
\public_html\published\publicdata\ВАШ-КОД-БД\attachments\SC\themes\ВАШ-КОД-ТЕМЫ\main.css

/*  иконки   */

.cat_product_picture {position:relative;}
div.product-icons {position: absolute; top: 5px; right: -5px; display: block; width: 32px; }
a.icon-my_star {text-decoration:none; background: url(/custom/img/icon_my_star.png) no-repeat; display: block; height: 32px; width: 32px; }

8) загрузим картинки в /custom/img/
создайте свою картинку, это не обязательно должна быть звездочка. Это в фотошопе можете написать =распродажа= и сохранить как png.

Я не программист, что смог сделать, тем поделился.
 
Последнее редактирование:
В 4том пункте допушена ошибка

заменить это
Код:
<tr>
<td>Моя звездочка: </td>
<td><input type="checkbox" name="recomcheck" value="1" {if $product.recomcheck}checked{/if} /></td>
</tr>

на это

Код:
 <tr>
  <td>Хит продаж: </td>
  <td><input type="checkbox" name="my_star" value="1" {if $product.my_star}checked{/if} /></td>
  </tr>
 
п.7 для витрины
prdbrief_thumbnail
position: relative;
для странички с продуктом
cpt_product_images
position: relative;
п.5
вставил на 22 строку (у меня ничего там не переписывалось до этого)
п.6
правил \published\SC\html\scripts\templates\frontend\product_images.html
это именно код вывода картинки вставил на 17 строку
Автору спасибо и уважуха. Очень пригодилось
 
  • Нравится
Реакции: a33
Назад
Сверху