akeneo / icecat-connector
Akeneo PIM 的 Icecat 连接器
Requires
- php: >=7.1
- akeneo/extended-attribute-type: 2.1.*
- akeneo/pim-community-dev: ^2.2
- guzzlehttp/guzzle: 6.*
- prewk/xml-string-streamer: 0.9.*
Requires (Dev)
- friendsofphp/php-cs-fixer: @stable
- phpspec/phpspec: ~3.4
- phpunit/phpunit: ~5.7.22
README
The Icecat Connector gives the capability to enrich Akeneo PIM product data with the rich Icecat Catalog. It can be used with both Open Icecat free catalog or Full Icecat paid catalog.
需求
Akeneo PIM 实例必须连接到互联网才能访问 Icecat XML 网络API。
功能
此扩展允许使用 Icecat 目录数据丰富已存在的目录。它不会导入任何结构化内容,如类别或家族。这样您可以保持对目录结构的控制,并且不会受 Icecat 分类法的限制。
为了丰富产品内容,您还需要具有包含产品 EAN 的唯一属性。此属性将用于通过其网络API匹配 Icecat 产品。
现有的 Akeneo PIM 属性也必须通过包含两个主要列的 CSV 文件映射到 Icecat 功能:Akeneo 属性代码和相应的 Icecat 功能 ID。扩展提供了导入配置文件以帮助此映射步骤。
完成此映射后,将使用 Icecat XML 网络API通过大量编辑任务获取产品数据。
重要:此扩展不依赖于 Icecat 分类法,因此对 Akeneo 目录结构没有要求或限制。另一方面,使用此扩展无法初始化空的 Akeneo PIM。
配置
连接器提供了一个配置屏幕来设置一些重要信息
-
Icecat 凭证。您可以在配置屏幕中检查这些凭证。
-
Icecat 产品 EAN:包含 Icecat 产品 EAN 的产品属性。此属性必须是唯一的。
-
描述、简短描述、摘要描述、简短摘要描述:这些是 Icecat XML 有效负载中的常见数据,并且可以映射到任何 Akeneo PIM 文本属性。
-
fallback_locale:Akeneo 中非可本地化属性的 Icecat 本地化。
-
fallback_channel:Akeneo 中的目标渠道。
导入配置文件
此扩展中有 3 个不同的导入配置文件
icecat_download_features
:下载所有 Icecat 功能并准备属性映射 CSV 文件的配置文件。icecat_import_features_mapping
:上传最终的属性映射 CSV 文件。icecat_enrich_products
:此配置文件可用于 CRON 任务以丰富产品内容。
安装
Composer
首先,您必须要求连接器依赖项
composer require akeneo/icecat-connector 2.1.*
注册捆绑包
导入路由文件
在 app/config/routing.yml
中,添加以下条目
pim_icecat_connector: resource: "@PimIcecatConnectorBundle/Resources/config/routing.yml" prefix: /icecat
注册依赖项
Icecat 连接器使用新的属性类型来存储图片 URL 集合。然后您必须激活依赖项捆绑包
在 app/AppKernel.php
protected function registerProjectBundles() { return [ new \Pim\Bundle\ExtendedAttributeTypeBundle\PimExtendedAttributeTypeBundle(), new \Pim\Bundle\ExtendedMeasureBundle\PimExtendedMeasureBundle(), new \Pim\Bundle\IcecatConnectorBundle\PimIcecatConnectorBundle(), ]; }
添加新的大量操作
bin/console akeneo:batch:create-job "Akeneo Mass Edit Connector" "mass_edit_icecat_enrichment" "mass_edit" "mass_edit_icecat_enrichment"
在企业版环境中,您还必须添加相应的权限: https://docs.akeneo.com/2.2/manipulate_pim_data/mass_edition/register_a_new_mass_edit_action.html#phase-6-add-user-groups-permissions-to-job-profiles-enterprise-edition
为了便于此配置,捆绑包提供了一个 bin/setup.bash
来执行这些操作的一行命令。
Icecat 本地化和 PIM 本地化之间的映射
默认情况下,特定语言的内容设置为单个本地化。以下是现有的映射
更新 DB 架构
实现这一目标的办法是使用命令 bin/console doctrine:schema:update
。您需要为这个命令指定一个选项。
-
dump-sql
会显示变更而不应用它们。 -
force
会应用这些变更。
(可选)示例固定数据
此扩展为属性和家族提供了示例固定数据。它们旨在与 PimInstallerBundle:icecat_demo_dev 一起使用。
一旦您的应用程序安装了 icecat_demo_dev
数据,您就可以使用提供的导入配置文件 attributes_csv_import
和 family_csv_import
加载这些属性和家族。
构建属性映射
这是一个大型的设置步骤。该操作包括将 Akeneo 属性映射到 Icecat 功能。这可以分为三个步骤
-
下载完整的 Icecat 功能 CSV 文件。它提供了一个空白的 CSV 文件,用于映射。
-
在 CSV 文件中将需要的特征 ID 与 Akeneo 属性代码进行映射。如果您有很多属性要映射,这一步可能非常耗时。
-
上传 CSV 映射。
您可以在 文档文件夹 中找到更多关于映射的文档。
丰富产品
扩展提供了一个 icecat_enrich_products
任务,该任务可以手动使用或在 cron 任务中通过专门的导入配置文件使用。此导入配置文件将检查所有具有 Icecat EAN 属性的产品,并调用 Icecat API 获取数据。