1

我正在使用 Magmi (定期)将大约 6,000 个项目导入 Magento。我已经按照我需要的方式配置了几乎所有东西,但我有一个问题。

我需要连接 .csv 文件中的 3 列以创建“category_ids”列。我正在使用具有以下值的 Value Replacer 插件:

{item.departmentid},{item.classid},{item.subclassid}

这很好用,但是我需要使用 Generic Mapper 插件将此字段映射到另一个字段。这两个函数单独工作,但是我需要在通用映射器之前运行值替换器。据我所知,Generic Mapper 似乎首先运行。有没有办法可以改变这两个插件的执行顺序?

谢谢您的帮助!

矮人更新:

嗬!在试图弄清楚这一点时,我完全忽略了该部分。现在我已经完成了,我可能需要更多的帮助。现在我只使用具有以下设置的 Value Replacer 插件:

替换属性:category_ids

category_ids 的新值:

{{ ValueRemapper::use_csv('/var/www/magmi/category_ids.csv')->map({item.departmentid},{item.classid},{item.subclassid}) }}

它似乎没有按我的预期工作,但我是系统专家,而不是 PHP 程序员。有什么帮助吗?

第二次编辑 我通过使用Value Replacer函数首先将所有内容连接到一个新的“test”列中,然后使用Value Replacer Value Mapper函数创建带有映射值的category_ids列。令人困惑,但它运作良好。

4

2 回答 2

1

您可以为此目的使用 Value Replacer 插件的 ValueRemapper 助手。

请参阅Value Replacer 插件文档(ValueRemapper 帮助器部分)

于 2013-05-02T14:40:59.413 回答
0

回答您最初的问题(如何定义插件运行的顺序)。

根据我的经验,插件是按照插件文件名的顺序加载的。

例如,如果您查看magmi/plugins/base/itemprocessors/importlimiter,您会注意到插件的文件名是01_importlimiter.php.

如果您查看genericmapper插件文件夹,您会注意到插件文件名为02_genericmapper.php.

话虽如此,01_importlimiter.php将在之前执行02_genericmapper.php

于 2013-05-03T15:20:37.133 回答