Я работаю над созданием нового магазина Magento (это мой первый проект с Magento).
Я пытаюсь воспроизвести внешний вид существующего магазина для моих страниц с товарами, по крайней мере, с точки зрения макета:
http://www.panamericantool.com/cobalt-drills/drill-stops.html
http://www.panamericantool.com/screw-driver-bits/paint-cutters.html
Я понял, что мне нужно использовать сгруппированные продукты с простыми продуктами, чтобы создать то, что мне нужно.
В приведенных выше примерах каждый продукт имеет отдельные атрибуты, я предполагаю, что они выполняются с помощью различных наборов атрибутов в Magento.
Однако как они отображают заголовки / значения таблиц в теме?
Я знаю, что могу сделать ->getAttributeName()
или ->getAttribute('attribute_code')
в grouped.phtml
файле, но это приведет к огромному количеству, if (->getAttributeName() != '')...
и мне нужно будет изменить шаблон при добавлении больше.
Я уверен, что есть способ получить все атрибуты и перебрать их, но тогда как бы вы различали, скажем, meta_description
атрибут (также возвращаемый $_product->getData()
методом) и атрибут, который я хотел бы перечислить в таблице?
Как я мог достичь чего-то похожего на то, что у них есть?
Я также обеспокоен тем, что в магазине будет 5 тыс. Продуктов при запуске, и, возможно, он увеличится до 25-30 тыс., Когда мы добавим наш оставшийся запас. Многие из них будут нуждаться в разных атрибутах, но я предполагаю, что смогу обмениваться атрибутами между наборами атрибутов без особых проблем с производительностью?
Обновить:
Я продолжал играть с этим, я нашел это, чтобы получить все атрибуты продуктов, однако я все еще не знаю простого способа отображения определенных значений в сгруппированной таблице продуктов?
$attributes = Mage::getModel('catalog/product_attribute_api')->items($_product->getAttributeSetId());
foreach($attributes as $_attribute){
print_r($_attribute);
}
Ответы:
Это должно быть то, что вам нужно:
источник
Почему бы не создать атрибут, который говорит ему, какие атрибуты показывать?
Я закончил тем, что создал модуль, который загружает значение двух текстовых атрибутов для сгруппированных продуктов, которые являются строками кода атрибута. По сути, помощник, который анализирует строку списка атрибутов и зацикливается на ней для загрузки данных атрибутов связанных продуктов.
Создайте атрибут, который я назвал моим:
grouped_attr_array
Добавьте атрибут к атрибуту дизайна сгруппированного продукта, установленному в администраторе, а затем в виде поля, разделенного точкой с запятой, в данных продукта.
torque_range;torque_increments;torque_accuracy
Я вытащил этот код из моего модуля. Он выполняет дополнительную загрузку или скрытие атрибутов по умолчанию, основанных на значении атрибута, и модуль немного сложнее. Но чтобы получить данные, показанные в таблице, это некоторые из основных функций. Надеюсь, это даст вам идею для дальнейшего развития. Это использует magento 1.9.2
Помощник модуля:
Получение данных от помощника в groupedproduct.phtml
TH-х
ТД стол
Я хотел бы найти способ выбора этого атрибута на основе доступных атрибутов магазина. Может быть, есть и лучший способ сделать это тоже. Еще не дошли до этого.
источник