что такое container1 и container2 на странице просмотра продукта в magento
Мне нужно знать, что это за контейнер1 и контейнер2 на странице просмотра продукта magento. я говорю о файле view.phtml
в расположении app/design/frontend/<package>/<theme>/catalog/product/view.phtml
Актуальный вопрос:
Я задал этот вопрос, потому что.. Я узнал, что эти разделы отвечают за отображение параметров на странице просмотра продукта.
На самом деле моя проблема в том, что у меня есть 3 пакета продуктов, и я хочу отобразить их пользовательские параметры в своем собственном файле phtml. У меня есть эти коды со мной..
<?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());
}
?>
Мне нужно, чтобы продукт прошел через его артикул.Вот почему я так закодировался.теперь я правильно понимаю название. но там значения не отображаются.(примечание: Я добавил два раскрывающихся списка в качестве пользовательских параметров)
Заранее благодарю.
2 answers
Они относятся к положению, в котором отображаются пользовательские параметры продукта.
См. 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>
Здесь вы можете видеть, что container1
относится к "Столбцу информации о продукте", в то время как container2 - это "Блок после столбца информации". Эти значения описывают, где пользовательские параметры будут отображаться на странице просмотра продукта. Вы можете установить эти значения при редактировании продукта в администраторе Magento на вкладке Дизайн.
Блоки компоновки определены в 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>
И в app/design/frontend/base/default/template/catalog/product/view.phtml
вы увидите два вызова:
<?php echo $this->getChildChildHtml('container1', '', true, true) ?>
и<?php echo $this->getChildChildHtml('container2', '', true, true) ?>
Вы можете отредактировать файл phtml, перейдя по следующему пути приложение/дизайн/интерфейс/имя/по умолчанию/шаблон/каталог/продукт/информация/контейнер2.phtml ИЛИ , если это загружаемое приложение продукта/дизайн/интерфейс/имя/по умолчанию/шаблон/каталог/загружаемый/каталог/продукт/ссылки.phtml