Magento - 产品选项视图或控制器文件

时间:2011-02-18 19:09:31

标签: magento

在文件$MAGENTO_PATHapp/design/frontend/base/default/template/catalog/product/view/options/wrapper.phtml中,我看到以下代码行:

<?php echo $this->getChildHtml('', true, true);?>

这是负责在产品页面上打印产品选项。我想理解和修改这行代码产生的html内容,但我似乎无法找到与它相关的视图或控制器。例如,假设我想以编程方式添加字符&amp; nbsp;在下拉列表中的每个选项元素的innerHTML中,我编辑哪个phtml,php或html文件?

我希望这个问题的答案能帮助我理解如何检索产品选项,从而帮助我解决这个更直接的问题:

Magento - Query for Product Options

1 个答案:

答案 0 :(得分:7)

将空值传递给任何getChild函数时,将使用所有子项。在这种情况下,getChildHtml(''...会返回每个toHtml输出的结果。

要了解它的孩子是什么,我们需要参考catalog.xml布局文件:

<block type="catalog/product_view" name="product.info.options.wrapper" as="product_options_wrapper" template="catalog/product/view/options/wrapper.phtml" translate="label">
    <label>Info Column Options Wrapper</label>
    <block type="core/template" name="options_js" template="catalog/product/view/options/js.phtml"/>
        <block type="catalog/product_view_options" name="product.info.options" as="product_options" template="catalog/product/view/options.phtml">
            <action method="addOptionRenderer"><type>text</type><block>catalog/product_view_options_type_text</block><template>catalog/product/view/options/type/text.phtml</template></action>
            <action method="addOptionRenderer"><type>file</type><block>catalog/product_view_options_type_file</block><template>catalog/product/view/options/type/file.phtml</template></action>
            <action method="addOptionRenderer"><type>select</type><block>catalog/product_view_options_type_select</block><template>catalog/product/view/options/type/select.phtml</template></action>
            <action method="addOptionRenderer"><type>date</type><block>catalog/product_view_options_type_date</block><template>catalog/product/view/options/type/date.phtml</template></action>
        </block>
    <block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>
</block>

你可以从那混乱的混乱中看到你的包装块有一个'选项'孙子,它有几个渲染器用于不同类型的可能选项。对于下拉菜单,您可能需要修改catalog/product/view/options/type/select.phtml