mvenghaus/magento2-widget-directive

适用于Magento 2的Widget指令的简单解析器和构建器,适用于非Magento环境。

1.0.0 2024-03-14 18:58 UTC

This package is auto-updated.

Last update: 2024-09-14 21:01:00 UTC


README

适用于Magento 2的Widget指令的简单解析器和构建器,适用于非Magento环境。

安装

通过composer安装包

composer require mvenghaus/magento2-widget-directive:"^1.0"

使用

从字符串中解析指令

$content = <<<EOF
Lorem ipsum dolor sit amet, consetetur sadipscing elitr.

{{widget type="TestWidget\Widget" param1="foo" param2="bar"}}

Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
EOF;


$widgetParser = new \Mvenghaus\Magento2WidgetDirective\WidgetParser();
$widgets = $widgetParser->parse($content);

/** @var \Mvenghaus\Magento2WidgetDirective\Data\WidgetData $widget */
foreach ($widgets as $widget) {
    echo $widget->type;
    print_r($widget->properties);
}

构建指令

$widgetBuilder = new \Mvenghaus\Magento2WidgetDirective\WidgetBuilder();

$result = $widgetBuilder->build(
    new WidgetData(
       type: '\\TestWidget\\Widget',
       properties: [
           'param1' => 'foo',
           'param2' => 'bar'
        ]
    )
);

// -> {{widget type="TestWidget\Widget" param1="foo" param2="bar"}}

运行测试

composer test