Ubercart: наложить изображение на фото товара в зависимости от значения поля CCK

Аватар пользователя vkapas

Есть магазин на D6 и Ubercart 2.

Была поставлена задача сделать на товарах значки типа «Хит продаж», «New», «Sale» и т.п.

Я решил реализовать это с помощью поля CCK "Свойство товара", в котором можно выбрать одно из значений: Hit/New/Sale. Для страницы товара используется node-product.tpl.php, в котором значок накладывается в зависимости от значения поля "Свойство товара":


<?php
    
if($node->field_product_property[0]['value'] == 'Hit') print t('<div class="hit"> <img src="http://site.ru/sites/default/files/properties/hit.png"/> </div>');
    if(
$node->field_product_property[0]['value'] == 'New') print t('<div class="new"> <img src="http://site.ru/sites/default/files/properties/new.png"/> </div>');
    if(
$node->field_product_property[0]['value'] == 'Sale') print t('<div class="sale"> <img src="http://site.ru/sites/default/files/properties/sale.png"/> </div>');
?>
<?php 
print $node->field_image_cache[0]['view'?>

Проблема заключается в том, что я не знаю, как накладывать значок не только на странице товара, но и в каталоге.

Каталог товаров — это представление типа Page. Судя по всему, вышеприведённый код можно как-то адаптировать под Views, но я в PHP, увы, не силён.

В общем, требуется помощь знатоков :-).

Модули и темы:
Тип материала:
Версия Drupal:
0 Thanks

Комментарии

Аватар пользователя alexandr.poddubsky
alexandr.poddubsky 5 лет назад

это вам работать с файлом неужно. посмотрте для начала как пашет модуль для вотермарков.

Аватар пользователя vkapas
vkapas 5 лет назад

 ImageCache Actions? С него и начал, но так и не понял, как прикрутить его к значению CCK-поля товара.

Аватар пользователя alexandr.poddubsky
alexandr.poddubsky 5 лет назад

из модуля получаете значение поля для начала. а методом что в кэшаке используется обрабатываете уже фотки, в зависимости от значения. как то так.

Аватар пользователя vkapas
vkapas 5 лет назад

Честно говоря, объяснение ясности не внесло :-). Да и непонятно, чем этот способ лучше наложения через CSS.

Аватар пользователя alexandr.poddubsky
alexandr.poddubsky 5 лет назад

а блин, я невнимателен. еще раз прочитал , что требуется. у вас же самое простое решение и есть. вы css не знаете? иль не получается для начала темизировать ноду товара?

может что из этого вам поможет https://drupal.org/project/rules_image_styles , если не умеете темизировать и верстать

Аватар пользователя vkapas
vkapas 5 лет назад

С CSS проблем нет. Но дело в том, что категории товаров уже работают через Views, и стоит задача завязать это именно на Views, без дополнительной работы с темизацией. Ну или подскажите, с чем начать темизацию, шаблона для страницы каталога у искомого сайта я не нашёл.

За ссылку на модуль спасибо, но для 6-ки, увы, версии нет.

Аватар пользователя alexandr.poddubsky
alexandr.poddubsky 5 лет назад

вьювки тоже темизируются, посмотрите в модуле директория theme и в настройках вьювки.