Здравствуйте всем!
Делаю интернет магазин. друпал 7 + уберкарт 3.
Создал вьюшку, которая выводит мне изображение товара, цену товара, название товара.
Хотел сделать так: цену сделать ссылкой, при нажатии на которую продукт отправлялся бы в корзину. Но ничего не получилось. Подскажите как это правильно сорганизовать?
Комментарии
На сколько помню товары в корзину там уходят через форму по параметрам post
Еще помню там был штатный уберовский модуль, позволяющий делать это через обычную ссылку только вот название не помню
модуль этот зовется uc_cart_links
Чтобы не лезь глубоко можно просто вывести цену и ссылку add_to_cart в одном диве, а ссылку затемить css чтобы перекрывала цену (position: absolute, height, width...)
Скрыть поля Цена и Ссылка "add_to_cart "
Добавить поле Global:text, и токенами и html сформировать нужную ссылку..
Обязательное условие - дополнительное поле должно быть "ниже"полей, токены которых оно использует.
Скрывать не нужно -
Два поля: цена, ссылка.
Global text перед и после (аля префикс и суффикс) -
</div>
css код какой-нить такой (пишу прям здесь - не проверял)
position: relative;
width: 100px;
height: 30px;
}
a.add-to-cart-link{
display: block;
position: absolute;
top: 0;
width: 100%;
height: 100%;
text-indent: -9999em;
}
UPD orion, прошу прощения, не внимательно прочел, твой способ чуток другой - формирование ссылки из текста цены и линка ссылки, однака тут есть трабла - вьюс из базы цену дергает просто цифрой 9999, форматирование uc_price уже после идет, поэтому, полагаю, мой способ будет оптимальнее.
Всем спасибо за комменты...
Пробовал с токенами, а потом css. Получается что на кнопку можно было нажать, только вне блока где указана цена.
Тогда я сделал так.
Создал поле Глобал: текст.
Скрыл из вывода два поля: Цена и Добавить в корзину.
В поле глобал сделал 2 дива: 1 с токеном от кнопки добавить в корзину, а второй див с ценой.
Потом создал файл отвечающий за отображение этого поля. и все. при помощи php подменил добавить в корзину на цену. В итоге все работает.
$price = $row->uc_products_sell_price;
$price = substr($price, 0, -3).' руб';
$a = str_replace('Добавить в корзину', $price, $output);
print $a;
?>