1

私は、Magmi を使用して約 6,000 のアイテムを Magento に (定期的に) インポートする作業を行っています。必要に応じてほぼすべてを構成しましたが、1 つ問題があります。

「category_ids」列を作成するには、.csv ファイルから 3 つの列を連結する必要があります。次の値で Value Replacer プラグインを使用しています。

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

これはうまく機能しますが、Generic Mapper プラグインを使用して、このフィールドを別のフィールドにマップする必要があります。どちらの関数も個別に機能しますが、Generic Mapper の前に Value Replacer を実行する必要があります。私が知る限り、Generic Mapper が最初に実行されるようです。これら 2 つのプラグインの実行順序を変更する方法はありますか?

助けてくれてありがとう!

Dweeves の更新:

どっ!これを理解しようとしている間、私はそのセクションを完全に見落としていました。それを経験した今、もう少し助けが必要かもしれません。現在、次の設定で Value Replacer プラグインのみを使用しています。

置き換えられた属性: category_ids

category_ids の新しい値:

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

意図したとおりに動作していないようですが、私はシステムの専門家であり、PHP プログラマーではありません。何か助けはありますか?

2番目の編集 Value Replacer関数を使用して最初にすべてを新しい「テスト」列に連結し、次に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 に答える