Estou trabalhando na construção de uma nova loja Magento (esta é a minha primeira vez com Magento).
Estou procurando replicar a aparência de uma loja existente para minhas páginas de produtos, pelo menos em termos de layout:
http://www.panamericantool.com/cobalt-drills/drill-stops.html
http://www.panamericantool.com/screw-driver-bits/paint-cutters.html
Eu descobri que preciso usar produtos agrupados, com produtos simples para criar o tipo de coisa que eu procuro.
Nos exemplos acima, cada produto possui atributos separados, suponho que eles sejam feitos por diferentes conjuntos de atributos no Magento.
No entanto, como eles exibem esses títulos / valores de tabela diferentes no tema?
Eu sei que posso fazer ->getAttributeName()
ou ->getAttribute('attribute_code')
no grouped.phtml
arquivo, mas isso resultaria em uma grande quantidade de if (->getAttributeName() != '')...
e eu precisaria alterar o modelo ao adicionar mais.
Tenho certeza de que existe uma maneira de obter todos os atributos e fazer um loop sobre eles, mas como você diferenciaria entre digamos o meta_description
atributo (também retornado pelo $_product->getData()
método) e um atributo que eu gostaria listado na tabela?
Como eu poderia conseguir algo parecido com o que eles têm?
Também estou preocupado com o desempenho, pois a loja terá 5 mil produtos no lançamento, aumentando para talvez 25 mil a 30 mil à medida que adicionamos nosso estoque restante. Muitos deles precisarão de atributos diferentes, mas acho que eu poderia compartilhar atributos entre conjuntos de atributos sem muitos problemas de desempenho?
Atualizar:
Eu continuei brincando com isso, achei isso para obter todos os atributos de um produto, mas ainda não conheço uma maneira simples de mostrar certos valores em uma tabela agrupada de produtos?
$attributes = Mage::getModel('catalog/product_attribute_api')->items($_product->getAttributeSetId());
foreach($attributes as $_attribute){
print_r($_attribute);
}