2016-01-15 2 views
0

У меня есть веб-сайт magento, и я хочу добавить вкладку на страницу продукта, чтобы добавить ингредиенты продукта. Из magento admin я создал новый атрибут «Ингредиенты» и добавил его к атрибутам, установленным для этого продукта.Добавление вкладки на страницу продукта в magento

Вот как язычки выглядит сейчас:

enter image description here

Но моя проблема в том, чтобы показать этот атрибут на переднем конце. Я нашел раздел в файле catalog.xml, где указаны вкладки, но я не могу добавить атрибут ингредиентов на страницу в качестве вкладки.

<block type="catalog/product_view_tabs" name="product.info.tabs" as="info_tabs" template="catalog/product/view/tabs.phtml" > 
       <action method="addTab" translate="title" module="catalog"><alias>description</alias><title>Product Description</title><block>catalog/product_view_description</block><template>catalog/product/view/description.phtml</template></action> 
       <!--<action method="addTab" translate="title" module="catalog"><alias>upsell_products</alias><title>We Also Recommend</title><block>catalog/product_list_upsell</block><template>catalog/product/list/upsell.phtml</template></action>--> 
       <action method="addTab" translate="title" module="catalog"><alias>additional</alias><title>Additional Information</title><block>catalog/product_view_attributes</block><template>catalog/product/view/attributes.phtml</template></action> 

       <action method="addTab" translate="title" module="tag"><alias>product.tags</alias><title>Product Tags</title><block>tag/product_list</block><template>tag/list.phtml</template></action> 

       <action method="addTab" translate="title" module="catalog"><alias>delivery</alias><title>Delivery Info</title><block>catalog/product_view_attributes</block><template>catalog/product/view/delivery_returns.phtml</template></action> 
      </block> 

Просьба помочь. Спасибо.

ответ

0

Под номером info_tabs, ссылаясь на описание, вы можете добавить еще одну вкладку. Кроме того, ваш xml-макет не равен rwd theme. поэтому я не уверен, но это должно сработать.

<action method="addTab" translate="title" module="catalog"><alias>description1</alias><title>Tab title</title><block>catalog/product_view_description</block><template>catalog/product/view/ingredient.phtml</template></action> 

Теперь на файл ingredients.phtml в catalog/product/view/ingredient.phtml получить значение атрибута печати.

<?php 
     $_product = Mage::registry('current_product'); //current product object 
     echo $_product->getData('ingredient'); //attribute code ingredient ?> 

Надеюсь, это поможет!

+0

Спасибо. Я попытался показать вкладку после нескольких попыток и модификаций, единственный способ показа вкладки, когда у меня это было в файле phtml. ' getLayout() -> createBlock ('cms/block') -> setBlockId ('components') -> toHtml(); ?> getData ('component'); // атрибут code component?> -> ' – Rami

+0

Странно, что при удалении прокомментированной части вкладка не отображается. – Rami

+0

@Rami Итак, 'components' - ваш идентификатор блока? вы называете это атрибутом. Вкладка не отображается, когда значение печати в файле phtml равно null; Если файл phtml ничего не имеет, вкладка не появится. вы также можете протестировать с помощью некоторого статического текста/элемента. –

Смежные вопросы