emico / tweakwise-export
Requires
- php: ^7.4|^8.0|^8.1
Requires (Dev)
- fzaninotto/faker: ^1.7
- malukenho/docheader: ~0.1
- phpro/grumphp: ^0.11.1
- dev-master
- v4.2.4
- 4.2.3
- v4.2.2
- v4.2.1
- v4.2.0
- v4.1.0
- v4.0.5
- v4.0.4
- v4.0.3
- v4.0.2
- v4.0.1
- v4.0.0
- v3.2.2
- v3.2.1
- v3.2.0
- v3.1.0
- v3.0.0
- v2.1.0
- v2.0.2
- v2.0.1
- v2.0.0
- v1.6.3
- v1.6.2
- v1.6.1
- v1.6.0
- v1.5.6
- v1.5.5
- v1.5.4
- v1.5.3
- v1.5.2
- v1.5.1
- v1.5.0
- v1.4.0
- v1.3.9
- v1.3.8
- v1.3.7
- v1.3.6
- v1.3.5
- v1.3.4
- v1.3.3
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.4
- v1.1.3
- V1.1.2
- V1.1.1
- V1.1.0
- v1.0.14
- V1.0.13
- v1.0.12
- v1.0.11
- v1.0.10
- v1.0.9
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-feat/performance
- dev-test
- dev-issue/93-dont-export-when-disabled
This package is auto-updated.
Last update: 2022-10-27 17:42:23 UTC
README
安装
使用 composer 安装包
composer config minimum-stability dev composer require emico/tweakwise-export
使用 zip 文件安装包
Extract tweakwise-export.zip src folder to app/code/Emico/TweakwiseExport/
如果启用了“店铺级别导出”,则可以使用命令行生成单个店铺的源数据。
php bin/magento tweakwise:export --store '<storecode>'
运行安装程序
php bin/magento setup:upgrade php bin/magento setup:static-content:deploy
使用方法
所有导出设置都可以在“商店”->“配置”->“目录”->“Tweakwise”->“导出”下找到。
可以使用命令行生成源数据。
php bin/magento tweakwise:export
调试
调试是通过 Magento / PHP 的默认调试功能完成的。您可以通过将部署模式设置为开发者来启用源数据的缩进。
php bin/magento deploy:mode:set developer Usage: tweakwise:export [-c|--validate] [file] Arguments: file Export to specific file (default: "var/feeds/tweakwise.xml") Options: --validate (-c) Validate feed and rollback if fails. --help (-h) Display this help message --quiet (-q) Do not output any message --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug --version (-V) Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output --no-interaction (-n) Do not ask any interactive question
源数据结构
源数据包含一些头部信息,然后是类别和产品。Tweakwise 不原生支持多个店铺,因此所有类别和产品都以 1000{store_id} 为前缀。如果一个产品(ID 为 1178)在多个店铺(例如 1、5 和 8)中活跃且可见,则它将在源数据中出现三次,ID 分别为:100011178、100051178 和 100081178。该产品的数据取决于特定店铺的属性值。简而言之,实体在源数据中的形式为 1000{store_id}{entity_id}
。
源数据只包含在您的目录配置中可见的产品。如果一个产品有子产品(例如,它是可配置的),则源数据也将包含所有这些子产品的数据。子数据汇总到“父”产品上。这样做的原因是,当用户搜索 M 号 T恤时,可配置产品必须在结果中显示,因此可配置产品应与所有子产品中可用的尺寸一起导出。
源数据只包含对搜索或导航有影响的属性,请检查 src/Model/ProductAttributes.php:45
以了解属性必须满足的导出标准。
关于源数据实现的说明
由于 Magento 的原生接口和数据处理器对于大型目录来说太慢,我们决定自行查询数据。结果是,我们需要跟踪 Magento 的内部工作原理,并受其变化的制约。如果您发现数据检索存在问题,请在 github 上创建问题。
导出设置
- 店铺级别导出:为每个店铺生成单独的源数据
- 启用:如果该店铺的产品应导出到 Tweakwise,请注意,如果某些店铺的此设置为 false,则该店铺的导航和搜索也应禁用。
- 计划:用于生成feed的cron计划。我们强烈建议您在服务器的crontab上注册导出任务,而不是使用Magento cron。
- 导出计划:在下一个cron运行时生成feed。
- 密钥:当ExportController请求feed内容或CacheFlush控制器请求刷新缓存时,这将由导出模块进行验证。如果请求没有匹配的密钥参数,则不会提供feed(或者在缓存控制器的情况下,不会刷新缓存)。
- 允许刷新缓存:允许自动刷新缓存,您可以在发布后配置一个任务来运行以刷新Magento缓存。您必须在任务配置中指定一个URL:使用https://yoursite.com/tweakwise/cache/flush/key/{{feed_key}}作为其URL,这里feed_key等于“密钥”设置中配置的密钥(见上文)。如果此设置设置为无,则tweakwise-export将忽略这些请求。
- 实时导出:当ExportController请求feed时,它将现场生成一个新的。请注意,这不建议使用!
- Tweakwise导入API URL:导航器中的任务可以通过API执行。在这里使用导入任务API URL来自动告知tweakwise在生成feed后导入feed。
- 导出缺货组合产品子产品:Tweakwise导出将汇总父产品的子产品数据,此设置确定是否应将缺货子产品的数据包含在此汇总中。
- 排除子属性:这些属性的值将在汇总到父产品时被排除。
- 哪个价格值将被导出到tweakwise作为“价格”。
可见性设置
Magento具有多个可见性设置,tweakwise只知道可见产品,这意味着如果一个产品在feed中,那么它在导航和搜索时将是可见的。magento可见性设置在feed中导出,因此您可以在tweakwise模板中添加一个隐藏的过滤器来人为地使用正确的设置。如果您这样做,则从子产品中排除可见性属性(见“导出设置”)。
事件
目前没有记录事件,这将在未来的版本中完成。
配置文件
使用标准的Magento配置文件进行配置,更多信息将在未来的版本中提供。