一、首先是开启Widget小工具的功能
app/etc/modules/one_widget.xml
<config>
<modules>
<one_Widget>
<active>true</active>
<codePool>local</codePool>
<depends>
<Mage_Cms />
</depends>
</one_Widget>
</modules>
</config>
二、新建一个帮助类
app/code/local/one/Widget/Helper/Data.php
class one_Widget_Helper_Data extends Mage_Core_Helper_Abstract
{
}
三、为widget小工具建立配置文件
app/code/local/one/widget/etc/config.xml
<config>
<modules>
<One_Widget>
<version>0.1.0</version>
</One_Widget>
</modules>
<frontend>
<routers>
<widgetset>
<use>standard</use>
<args>
<module>One_Widget</module>
<frontName>widgetset</frontName>
</args>
</widgetset>
</routers>
</frontend>
<global>
<helpers>
<widgetset>
<class>One_Widget_Helper</class>
</widgetset>
</helpers>
<blocks>
<widgetset>
<class>One_Widget_Block</class>
</widgetset>
</blocks>
</global>
</config>
四、对widget小工具的信息进行定义
app/code/local/one/widget/etc/widget.xml
<?xml version="1.0"?>
<widgets>
<widget_product_one type="widget/product_one" translate="name description" module="widget">
<name>One Product</name>
<description>One Product Info</description>
<parameters>
<id_path translate="label">
<visible>1</visible>
<required>1</required>
<label>Product</label>
<type>label</type>
<helper_block>
<type>adminhtml/catalog_product_widget_chooser</type>
<data>
<button translate="open">
<open>Select Product...</open>
</button>
</data>
</helper_block>
<sort_order>10</sort_order>
</id_path>
<template translate="label">
<label>Template</label>
<visible>1</visible>
<type>select</type>
<value>catalog/product/widget/one.phtml</value>
<values>
<default translate="label">
<value>catalog/product/widget/one.phtml</value>
<label>Product One 1</label>
</default>
<link_inline translate="label">
<value>catalog/product/widget/one.phtml</value>
<label>Product One 2</label>
</link_inline>
</values>
</template>
</parameters>
</widget_product_one>
</widgets>
五、定义块
code/local/one/widget/Block/product/one.php
<?php
class one_Widget_Block_Product_One
extends Mage_Core_Block_Html_Link
implements Mage_Widget_Block_Interface
{
......
protected function _toHtml()
{
return parent::_toHtml();
}
}
?>
ok,试试看吧。