Magento有一个小部件,可以选择产品。我需要将其嵌入我的形式中。更明确的是,我将提供屏幕截图:enter image description here

从这个小部件我只需要产品ID。我可以看到我需要这样的东西:

<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>

但尚未找到如何使用它。我将感谢任何帮助。

有帮助吗?

解决方案 2

这就是我要寻找的:

$product1Link = $fieldset->addField('product1_link', 'label', array(
        'name' => 'product1_link',
        'label' => Mage::helper('abc_productbundles')->__('Product 1'),
        'class' => 'widget-option',
        'value' => $model->getProduct1Link(),
        'required' => true,
    ));

$model->unsProduct1Link();
$helperBlock = $this->getLayout()->createBlock('adminhtml/catalog_product_widget_chooser');
if ($helperBlock instanceof Varien_Object) {
    $helperBlock->setConfig($this->getChooserConfig())
        ->setFieldsetId($fieldset->getId())
        ->setTranslationHelper(Mage::helper('abc_productbundles'))
        ->prepareElementHtml($product1Link);
}

其他提示

我假设您正在创建一个自己的小部件 - 以下内容不适用于普通管理员表格。

您只是将那个剪切的 <parameters> 小部件配置(`widget.xml')的部分。

当用户选择产品时,参数 id_path 将设置在您的小部件中。

在您的小部件块内部,您可以得到这样的参数:

$this->getData('id_path');

ID路径包含诸如“产品/123”之类的内容 - 您可能只需要产品ID:

list($dummy, $productId) = explode("/", $this->getData('id_path'))
许可以下: CC-BY-SA归因
scroll top