Prestashop - 以不同语言导入产品的 csv 文件:未翻译的特征值

Prestashop - import csv files of products in different languages : feature value not translated

我想在 Prestashop 1.6 中导入 2 种不同语言的产品 csv 文件。 我有 2 个 csv 文件,每种语言一个。 导入第一语言的csv文件一切正常

当我导入第二语言的 csv 文件时,Prestashop 无法将特征值理解为第一语言特征值的翻译,而是作为新特征值添加。

它被添加为一个新的特征值,因为我使用了多特征模块(http://addons.prestashop.com/en/search-filters-prestashop-modules/6356-multiple-features-assign-your-features-as-you-want.html)。 如果没有此模块,第二个 csv 导入会更新两种语言的特征值。

如何让 Prestashop 理解它是一个翻译,而不是一个特征的新特征值?

谢谢!

我通过直接更新数据库找到了解决方案。

- 我在主要语言的 prestashop 中使用 csv import 导入了我的所有产品。

-特征值存储在ps_feature_value_langtable中。 3 列:id_feature_value | id_lang |值

- 在我的例子中,法语是 ps_feature_value_lang.id_lang = 1,英语是 ps_feature_value_lang.id_lang = 2

- 在我进行任何更改之前,ps_feature_value_lang 的数据如下所示:

id_feature_value | id_lang |值

1 | 1 |我的法文价值

1 | 2 |我的英语价值

- 我创建了一个包含 2 列的 table (myTableOfFeatureValueIWantToImport):feature_value_FR / feature_value_EN。我用数据填充了这个table。

- 因为我不知道我的特征值的 ID (id_feature_value)(prestashop 在导入我的第一语言的 csv 文件期间创建了这些 ID),我要循环myTableOfFeatureValueIWantToImport 的数据,每次 ps_feature_value_lang.id_lang == 2 和 ps_feature_value_lang.value == "value I want to translate" 我要用我的特征值更新 ps_feature_value_lang.value已翻译。

$select = $connection>query("SELECT * FROM myTableOfFeatureValueIWantToImport GROUP BY feature_value_FR");
 $select->setFetchMode(PDO::FETCH_OBJ); 
while( $data = $select->fetch() )
      {  
          $valFR = $data->feature_value_FR;
          $valEN = $data->feature_value_EN;
          $req = $connection->prepare('UPDATE ps_feature_value_lang 
          SET ps_feature_value_lang.value = :valEN
          WHERE ps_feature_value_lang.id_lang = 2
          AND ps_feature_value_lang.value = :valFR
          ');
          $req->execute(array(
              'valEN' => $valEN,
              'valFR' => $valFR 
                )); 
      }

完成:D