这个问题好像被多次询问,但没有回答。
我创建了一个小部件,可以将属性值添加到可配置的产品中。需要明确的是,如果可配置产品由基于属性大小和颜色的多个简单产品(相关产品)组成,那么我想向客户显示此可配置产品的“可用”尺寸和颜色。并且,我想以编程方式进行,而不是仅仅在说明中放入尺寸和颜色列表,因为目前不是所有尺寸或颜色都可用。所以我创建了这个小部件。
现在,我想制作一个可以使用任何相关产品属性的小部件的更通用版本。但是,要执行此操作,管理员设置窗口小部件需要从可用属性列表中选择属性。这实际上可以在将小部件添加到CMS页面时起作用,因为widget.xml文件中定义的参数允许这样做。
问题是我没有将小部件添加到CMS页面。我将它添加到产品页面。所以我需要在CMS使用Widget实例功能 - >小部件 - >添加新窗口小部件实例编辑器。但是,此编辑器具有前端属性和窗口小部件选项的选项卡。并且widget.xml文件中的参数未显示在此编辑器的“窗口小部件选项”选项卡中。
那么,有没有办法将参数添加到widget.xml文件中添加窗口小部件实例编辑器的窗口小部件选项选项卡(例如:
<widgets>
<Widget Options>
<parameters>
<my_widget_instance_parameter> ... </my_widget_instance_parameter>
</parameters>
</Widget Options>
</widget>
或者这是否需要增强实际的小部件实例编辑器?
感谢。
答案 0 :(得分:4)
转到\app\code\core\Mage\Cms\etc\widget.xml
并查看CMS页面链接窗口小部件选项:
<cms_page_link type="cms/widget_page_link" translate="name description" module="cms">
<name>CMS Page Link</name>
<description>Link to a CMS Page</description>
<is_email_compatible>1</is_email_compatible>
<parameters>
<page_id type="complex" translate="label">
<visible>1</visible>
<required>1</required>
<label>CMS Page</label>
<type>label</type>
<helper_block>
<type>adminhtml/cms_page_widget_chooser</type>
<data>
<button translate="open">
<open>Select Page...</open>
</button>
</data>
</helper_block>
<sort_order>10</sort_order>
</page_id>
<anchor_text translate="label description">
<visible>1</visible>
<label>Anchor Custom Text</label>
<description>If empty, the Page Title will be used</description>
<type>text</type>
</anchor_text>
<title translate="label">
<visible>1</visible>
<label>Anchor Custom Title</label>
<type>text</type>
</title>
<template translate="label">
<label>Template</label>
<visible>1</visible>
<type>select</type>
<value>cms/widget/link/link_block.phtml</value>
<values>
<default translate="label">
<value>cms/widget/link/link_block.phtml</value>
<label>CMS Page Link Block Template</label>
</default>
<link_inline translate="label">
<value>cms/widget/link/link_inline.phtml</value>
<label>CMS Page Link Inline Template</label>
</link_inline>
</values>
</template>
</parameters>
</cms_page_link>
正如您所看到的,参数可以是简单类型(文本,选择)和带有辅助块的更复杂类型:
<helper_block>
<type>adminhtml/cms_page_widget_chooser</type>
<data>
<button translate="open">
<open>Select Page...</open>
</button>
</data>
</helper_block>
这里输入的是magento表示法中的辅助块类名。