Drupal commerce template.tpl.php

Аватар пользователя divined divined 13 декабря 2012 в 22:02

Как стилизовать свои продукты?
А именно: добавить полю цены враппер, существенно изменить позиции элементов, перемешав и объединив некоторые, что невозможно сделать в управлении отображением.

Редактирование node--{node_type_display}.tpl.php - массива $content позволяет достичь некоторых результатов, но все сбрасывается при выборе любого атрибута: Wrapper исчезает, позиции меняются на стандартные.

Нигде не могу найти информацию какой файл шаблона нужен, например product--{product_type}.tpl.php с прямым доступом к переменным.

Комментарии

Аватар пользователя imarat imarat 13 декабря 2012 в 23:34

в ноде-дисплее извлекаете из поля продакт-референс ид товара и грузите товар через коммерсе_продакт_лоад - вот вам и прямой доступ к переменным

добавлено: а лучше чтобы все переменные были в ноде-дисплее (а товар создавался сам - рулезами)

Аватар пользователя divined divined 14 декабря 2012 в 0:20

Все это замечательно, но вот беда там 20+ таких ид-ков. Дисплей то это набор товаров. И узнать какой товар в данный момент выбран аргументами не представляется возможным.
И у каждого товара разные значения переменных (

Аватар пользователя divined divined 14 декабря 2012 в 0:21

Основная задача сводится к программному доступу к цене текущего ВЫБРАННОГО товара в дисплее.

Аватар пользователя imarat imarat 14 декабря 2012 в 1:40

"divined" wrote:
И узнать какой товар в данный момент выбран аргументами не представляется возможным

почему? аргументы берут ид из урла или еще откуда-то, оттуда и вы берите

Аватар пользователя divined divined 14 декабря 2012 в 19:58

Аргументов в урле нет, переключение товара происходит через аякс. Одним вариантом решения вижу хак функции переключения аргументов и запись текущей цены (или номера товара) в куку. Но хак - ето плохо, очень плохо в текущем проекте.
Второй вариант - хук формы добавления в корзину и добавление своих обработчиков на все переключатели аргументов, что не очень хорошо со стороны затраченного времени, но все-таки лучше хака.

Есть еще варианты?

Аватар пользователя imarat imarat 14 декабря 2012 в 21:08

"divined" wrote:
Аргументов в урле нет, переключение товара происходит через аякс.

при этом подключении форма добавления в корзину тоже обновляется?
хук_форм_алтер - достать ид

Аватар пользователя divined divined 15 декабря 2012 в 12:04

при этом подключении форма добавления в корзину тоже обновляется?

только частично, при переключении атрибутов хук второй раз не вызывается ((((