qburst / productsyncbundle
Pimcore 的 Magento 连接器
Requires
- php: ^8.0
- pimcore/pimcore: ^11
This package is not auto-updated.
Last update: 2024-09-24 08:40:56 UTC
README
支持的版本 - 11.0.2 - 社区版
目录
1. 概述
Magento-Pimcore PIM 连接器扩展使得 Pimcore 和 Magento 商店的集成变得无缝。从 Pimcore 导入的产品根据翻译配置存储在相应的 Magento 商店中。
一次同步一个产品。同步在 Pimcore 中发布更改时触发。
2. 功能
-
GraphQl 利用: 使用定制的 Magento GraphQl 端点以获得更快的结果。
-
基于令牌的认证: 实现基于令牌的认证和源 IP 的白名单,以保护端点。
-
独家授权: 允许 Pimcore 管理员通过授权具有适当捆绑权限的用户来保护扩展配置页面。
-
易于配置: 通过 Pimcore 侧的配置页面简化数据输入和字段映射。
-
已发布产品导出: 仅当产品在 Pimcore 中发布时同步。
-
实时同步: 提供实时同步 Pimcore 中对 Magento 的更改,并同时通知用户这些更新。
-
属性同步: 消除在 Magento 中为从 Pimcore 同步的产品创建属性的需求,同时保持 Magento 中所有现有属性不变。
-
翻译支持: 利用 Magento 的多语言支持,基于不同的商店视图对产品进行操作。用户可以在 Pimcore 配置中将语言代码及其相应的 Magento 商店视图代码进行映射。
-
媒体库: 检测并导入与产品相关联的所有媒体文件——单个图像、相册、外部图像 URL 或视频。扩展自动识别并将详细信息与产品一起导入 Magento。
注意:目前,Magento 仅支持 YouTube 和 Vimeo 视频。本扩展遵守此限制。
3. 先决条件
要使用此扩展
- 在 Magento Marketplace 上安装 Magento - Pimcore PIM 连接器。两个扩展(Magento - Pimcore PIM 连接器用于 Magento 和 PIM)应分别安装在其各自的平台商店中以便集成。
4. 安装
-
连接到服务器。
-
在 Pimcore 根目录中运行以下命令以通过命令行安装扩展
composer require qburst/productsyncbundle
-
将捆绑包添加到您的 Kernel 中的 src/Kernel.php。
public function registerBundlesToCollection(BundleCollection $collection): void
{
$collection->addBundle(\QBurst\ProductSyncBundle\QBurstProductSyncBundle::class, 70);
}
-
运行以下命令安装捆绑包
php bin/console pimcore:bundle:install QBurstProductSyncBundle
5. 授权
Pimcore 管理员可以授权其他用户和角色配置扩展。要授权
- 从管理员仪表板的左侧导航窗格中选择“设置”。出现一个包含各种设置选项的菜单。
- 从菜单中选择用户/角色。显示一个包含用户、角色和分析权限选项的子菜单。
- 根据需要选择用户或角色。将显示一个包含可用用户/角色的仪表板。
- 选择需要授权的用户或角色。将显示包含用户/角色详细信息的仪表板。
- 从顶部菜单中选择“设置”。
- 单击“权限包”附近的“+”图标。将显示“管理员翻译”和“应用程序日志器”等选项。
- 从显示的选项中找到“Pimcore to Magento - 产品连接器”。
- 勾选复选框以授权用户/角色。
注意:默认情况下,管理员用户已经授权到该包。
6. 配置
安装成功后,QBurst标志将出现在管理员仪表板中。单击此标志以查看Magento - Pimcore PIM连接器标志。要查看配置页面
- 通过单击管理员仪表板中的QBurst标志选择“Magento - Pimcore PIM连接器”选项。将显示一个用于添加配置详细信息的仪表板。
- 配置参数包括
-
说明目标Pimcore数据对象类名称:目标Pimcore类名称,从该类应导出产品到Magento。
-
Magento网站URL:目标Magento网站的URL。
-
**Magento API访问令牌:**在商店集成中生成的API令牌。(参考Magento - Pimcore PIM连接器的Magento端文档。)
-
列出并映射Magento商店视图和语言翻译:配置Pimcore中产品的翻译值在Magento上的显示方式。对于Pimcore中的每种语言,Magento应有一个相应的商店来接受这些值。要映射Pimcore语言和Magento商店,请使用冒号运算符。使用空格分隔每个映射。例如:en:storeview1 fr:storeview2。
- 在上面的示例中,“en”和“fr”分别代表“英语”和“法语”的语言代码。在设置>系统设置>本地化与国际化(i18n/l10n)下配置本地化详细信息时,在Pimcore中获取这些语言代码。
- ‘storeview1’和‘storeview2’是来自Magento的商店视图代码,分别对应英语和法语值。从**_Stores > 设置 > 所有商店 _**中的“商店视图”列获取这些。
-
产品名称字段:在Pimcore源类中表示产品名称值的字段名称。此处默认值为“name”。用户可以根据需要更改它。
-
产品描述字段:在Pimcore源类中表示产品描述值的字段名称。此处默认值为“description”。用户可以根据需要更改它。
-
**产品简短描述字段:**在Pimcore源类中表示产品简短描述值的字段名称。此处默认值为“shortDescription”。用户可以根据需要更改它。
-
产品SKU字段:在Pimcore源类中表示产品SKU值的字段名称。确保此字段在Pimcore源类中被标记为唯一属性,因为来自此字段的值用于识别在Magento中现有产品。
注意:Magento只接受此字段的唯一值。通过在Pimcore中将此字段标记为唯一,用户可以在Pimcore侧复制相同的行为,并防止从Magento产生的重复SKU错误。
-
产品价格字段:在Pimcore源类中表示产品价格值的字段名称。
-
产品数量字段:在Pimcore源类中表示产品数量/库存值的字段名称。
-
产品状态字段:在Pimcore源类中表示产品状态的字段名称。用户不允许更改默认值,该默认值为“已发布”。
-
产品类型字段:在Pimcore源类中表示父产品类型的字段名称。参考Pimcore演示项目中类“Cars”的“对象类型”字段。
-
可配置产品值:来自“产品类型字段”字段的值,表示可配置产品对象。
-
简单产品价值:表示简单/子产品对象的“产品类型字段”中的值。
-
默认Magento类别:Pimcore产品分配到Magento中的类别名称。这些应该是现有的Magento类别。使用逗号分隔类别名称。例如:men,kurta。
-
可配置属性:在Magento商店中被视为可配置属性的属性字段名称。通过逗号分隔来指定额外的属性。例如:color,size。
-
自定义属性:所有字段都应作为自定义属性导入到Magento商店中。任何未包含在上面的配置中且需要与产品一起导入到Magento中的字段应在此处说明。通过逗号分隔指定多个属性。例如:country。
**Note:**
1. All fields on the configuration page are mandatory.
2. Mention the Object brick fields and relation fields in the configuration page using a dot operator. Example: salesInformation.condition or manufacturer.name, where salesInformation/manufacturer is the Object brick/relation field name and condition/name is the attribute within it.
3. Only mention the object brick details related to the target class. Skip the field name from the target class to which the object brick is related.
4. This extension does not support related fields within an object brick.
7. 同步
配置完成后,为了验证是否从Pimcore触发产品同步到Magento
- 在管理仪表板的左侧菜单中选择“数据对象”。显示具有文件夹层次结构的子菜单。
- 在数据对象下创建所需的文件夹层次结构。
- 在新创建的层次结构下,创建目标Pimcore类的对象。
**Note: **
* As only simple and configurable products are being handled currently, make sure to follow the below hierarchy for each of these product types.
* A simple product should be created under the parent folder. Ensure the value mentioned in 'Simple product value' is selected against the field assigned in the 'Product type field'.
* A configurable product should be created under the parent folder itself. Ensure the value mentioned in 'Configurable product value' is selected against the field assigned in the 'Product type field'.
* A variant/child product should be created under the parent object/product (mentioned above). Ensure that, for a variant product, the value mentioned in 'Simple product value' is selected against the field assigned in the 'Product type field'.
- 同步参数包括
- 属性值:为父产品和其变体产品分配可配置属性值。
- 产品SKU:将父产品SKU(作为前缀)和Pimcore中提供的值组合起来,以生成Magento中子产品的SKU。
- 产品类型:确保将正确的值分配给配置页面上的“产品类型字段”指定的字段。
- 点击“保存 & 发布”。同步后,屏幕底部右侧会显示成功消息。
注意:Pimcore中的自动保存功能,该功能将当前更改保存为草稿,不会触发同步功能。只有对目标Pimcore类对象所做的更改才会同步。即使它们与目标Pimcore类有已建立的关系,也不会同步其他类详细信息。
8. 日志
Pimcore到Magento的同步状态存储在每个产品的“备注和事件”下。要查看详细信息
- 在管理仪表板的左侧菜单中选择“数据对象”。显示具有文件夹层次结构的子菜单。
- 从层次结构中选择所需的数据对象以打开其编辑页面。这里选择“特殊”。
- 在数据对象编辑页面点击笔记图标以查看备注 & 事件部分中的同步信息。
- 显示的信息包括
- 类型:值为“sync-with-magento-product”以标识日志类型
- 标题:过程的标题
- 描述:操作的状态以及任何其他详细信息,如错误消息(如有)
- 用户:启动过程的用户的详细信息
- 日期:启动过程的时间戳
要查看更多详细信息或调试操作,我们在Pimcore的“PimcoreApplicationLoggerBundle”中记录了每次同步的详细信息。如果此包不可用,请通过运行以下命令安装它
php bin/console pimcore:bundle:install PimcoreApplicationLoggerBundle
要查看日志
- 从管理仪表板的左侧导航面板中选择“工具”。显示包含术语表、重定向、回收站等菜单。
- 点击“应用程序记录器”以查看日志条目。
- 显示的信息包括
- 时间戳:过程的日期和时间
- 消息:过程及其状态的详细信息以及任何适用的其他信息
- 类型:根据过程的状态,可以是“info”、“critical”或“error”
- 文件对象:为与Magento同步的操作创建的有效负载结构和详细信息
- 相关对象:链接到在Pimcore中触发过程的对象(源产品)
- 组件:对于此扩展,默认值为“sync-with-magento-product”
- 来源:默认情况下,记录消息的文件路径和行号
9. 翻译
该扩展根据Pimcore指南处理字段、属性标签和下拉选项值的翻译。
Pimcore指南如下:
- 在类定义中使用“localizedfields”字段类型来创建可翻译字段。这样,文本等输入字段类型可以拥有跨不同语言的价值。
- 要翻译属性标签和下拉选项,请在设置选项下使用“管理员翻译”。在此页面上选择消息选项以添加翻译。
- 对于属性标签,翻译键的格式为“general.attributeName”,其中attributeName是属性名称。
- 对于下拉选项值,翻译键的格式为“attribute.optionName”,其中optionName是下拉选项的名称。
10. 支持的字段类型
该扩展目前支持以下在Pimcore中可用的字段类型。这些字段类型在Magento中的映射如下:
11. 支持
如有任何疑问,请联系pimcore.support@qburst.com。