0

我正在用 Magento 开发一个小部件。我按照这里的说明成功了。现在我想改变后端小部件插入的行为。特别是我想改变一些输入的类型,从实际的多选到别的东西(我想要一个文件上传)。

执行此操作的代码是:

<parameters>
  <enabled_services>
    <label>Enabled Services</label>
    <visible>1</visible>
    <required>1</required>
    <type>multiselect</type>
    <source_model>widgettwo/services</source_model>
  </enabled_services>
</parameters>

所以,我想要其他东西,而不是多选。我在哪里可以找到所有可用类型的列表?哪里有导游?

4

1 回答 1

2

在您上面引用的教程中,它会告诉您类型。

来自: http: //www.magentocommerce.com/knowledge-base/entry/tutorial-creating-a-magento-widget-part-2

            <!-- Option type -->
            <type>select</type>
            <!--
                It can be either one of the simple form element types, e.g.:
                    <type>text</type>
                    <type>select</type>
                    <type>multiselect</type>
                    <type>label</type>
                ...

                or it can define a renderer which will be used to create
                this configuration field in the edit form.
                Renderer is supposed to be a block reference
                in 'block_group/block_path' format, e.g.:
                    <type>mymodule/some_custom_block</type>
            -->

            <!-- Source values for drop-downs and multiselects -->

            <!--
                There are two possible ways to define a set of available values.
                The first way is to specify the list of available values right here:
            -->
            <values>
                <one translate="label">
                    <value>1</value>
                    <label>One</label>
                </one>
                <two translate="label">
                    <value>2</value>
                    <label>Two</label>
                </two>
                <three translate="label">
                    <value>3</value>
                    <label>Three</label>
                </three>
            </values>

            <!--
                The second way is to specify the source model,
                which must have toOptionArray() public method available.
                The method should return an array of values and labels
                in the following format:
                    array(
                        array('value' => 'value1', 'label' => 'Label 1'),
                        array('value' => 'value2', 'label' => 'Label 2'),
                        array('value' => 'value2', 'label' => 'Label 3'),
                    );
                Source model name is specified in usual
                'model_group/model_path' format, e.g.:
            -->
            <source_model>adminhtml/system_config_source_yesno</source_model>

            <!-- Additional helper block to be created on the edit form page, optional -->
            <helper_block>
                <!-- Helper block reference in regular 'block_group/block_path' format -->
                <type>module/block_type</type>

                <!-- Arguments for the block constructor, optional  -->
                <data>
                    <value1>Value1</value1>
                    <value2>Value1</value2>
                    <value3>
                        <one>One</one>
                        <two>Two</two>
                    </value3>
                </data>
            </helper_block>

            <!--
                Here is the full example of helper block definition
                from catalog module widgets:

                <helper_block>
                    <type>adminhtml/catalog_product_widget_chooser</type>
                    <data>
                        <button translate="open">
                            <open>Select Product...</open>
                        </button>
                    </data>
                </helper_block>

            -->
        </first_option>

这个 StackExchange 问题可能会回答您问题的上传部分:Magento 小部件中的图像

于 2013-06-12T18:16:37.063 回答