o que é container1 e container2 na página de visualização do produto no magento

10

Eu preciso saber o que é esse container1 e container2 na página de visualização do produto magento. eu estou falando sobre o arquivo view.phtmlno localapp/design/frontend/<package>/<theme>/catalog/product/view.phtml

pergunta atualizada:

Fiz essa pergunta porque .. Soube que essas seções são responsáveis ​​por exibir as opções na página de visualização do produto.

Na verdade, meu problema é que tenho 3 pacotes de produtos e quero exibir suas opções personalizadas em meu próprio arquivo phtml. Eu tenho esses códigos comigo ..

<?php
$id=Mage::getModel('catalog/product')->getIdBySku(123456);
$prod = Mage::getModel('catalog/product')->load($id);
$x=$prod->getOptions();
foreach($x as $y)
 {
echo $y->getTitle();
print_r($y->getValues());
}
?>

Eu preciso obter o produto através do sku. É por isso que codifiquei assim. Agora estou recebendo o título corretamente. mas não há valores exibidos (observação: adicionei duas opções suspensas como minhas opções personalizadas)

Desde já, obrigado.

Rajeev K Tomy
fonte
Como você foi com essa @rajeevktomy?
jharrison.au

Respostas:

28

Eles estão relacionados à posição em que as opções personalizadas do produto são exibidas.

Veja app/code/core/Mage/Catalog/etc/config.xml:

<design>
    <options_container>
        <option1 translate="label">
            <value>container1</value>
            <label>Product Info Column</label>
        </option1>
        <option2 translate="label">
            <value>container2</value>
            <label>Block after Info Column</label>
        </option2>
    </options_container>
</design>

Aqui você pode ver que está container1relacionado à 'Coluna de informações do produto', enquanto o container2 é 'Bloquear após a coluna de informações'. Esses valores estão descrevendo onde as opções personalizadas serão exibidas na página de visualização do produto. Você pode definir esses valores ao editar um produto no Magento admin na guia Design.

Os blocos de layout são definidos em app/design/frontend/base/default/layout/catalog.xml:

 <block type="core/template_facade" name="product.info.container1" as="container1">
    <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action>
    <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
    <action method="append"><block>product.info.options.wrapper</block></action>
    <action method="append"><block>product.info.options.wrapper.bottom</block></action>
</block>
<block type="core/template_facade" name="product.info.container2" as="container2">
    <action method="setDataByKey"><key>alias_in_layout</key><value>container2</value></action>
    <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
    <action method="append"><block>product.info.options.wrapper</block></action>
    <action method="append"><block>product.info.options.wrapper.bottom</block></action>
</block>

E app/design/frontend/base/default/template/catalog/product/view.phtmlvocê verá duas chamadas:

<?php echo $this->getChildChildHtml('container1', '', true, true) ?>
e
<?php echo $this->getChildChildHtml('container2', '', true, true) ?>

jharrison.au
fonte
1
desculpe, eu esqueci de aceitá-lo :-) #
2700 Rajeev K Tomy
-4

Você pode editar o arquivo phtml, vá para o caminho abaixo app / design / frontend / themename / default / template / catalog / product / info / container2.p‌ html OU se for um produto para download app / design / frontend / themename / default / template /catalog/downloadable/catalog/product/links.phtml

vairakkani
fonte