Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Prestashop-导入不同语言产品的csv文件:未翻译特征值_Prestashop - Fatal编程技术网

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

Prestashop-导入不同语言产品的csv文件:未翻译特征值,prestashop,Prestashop,我想在Prestashop 1.6中导入两种不同语言的产品csv文件。 我有两个csv文件,每种语言一个。 当我导入第一语言的csv文件时,一切都很好 当我导入第二种语言的csv文件时,Prestashop不会将要素值理解为第一种语言要素值的翻译,而是将其添加为新要素值 它被添加为新的功能值,因为我使用了多功能模块()。 如果没有此模块,第二次csv导入将更新两种语言的功能值 我如何才能让Prestashop理解这是一个翻译,而不是一个特征的新特征值 谢谢 我通过直接更新数据库找到了解决方案 -

我想在Prestashop 1.6中导入两种不同语言的产品csv文件。 我有两个csv文件,每种语言一个。 当我导入第一语言的csv文件时,一切都很好

当我导入第二种语言的csv文件时,Prestashop不会将要素值理解为第一种语言要素值的翻译,而是将其添加为新要素值

它被添加为新的功能值,因为我使用了多功能模块()。 如果没有此模块,第二次csv导入将更新两种语言的功能值

我如何才能让Prestashop理解这是一个翻译,而不是一个特征的新特征值


谢谢

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

-我以prestashop中的csv导入为主要语言导入了我的所有产品

-特征值存储在ps_feature_value_lang表中。3列:id_特征_值| id_语言|值

-在我的例子中,法语是ps\u feature\u value\u lang.id\u lang=1,英语是ps\u feature\u value\u lang.id\u lang=2

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

id_特征值| id_lang |值

1 | 1 |我在法语中的价值

1 | 2 |我的英语价值观

-我创建了一个包含两列的表(MyTableOfeatureValueIwantImport):feature\u value\u FR/feature\u value\u EN。我在这张表格里填上了数据

-因为我不知道我的特征值的ID(ID\u feature\u value)(prestashop在导入我的第一语言的csv文件期间创建了这些ID),我将循环MyTableOfeatureValueIwant导入的数据,每次ps\u feature\u value\u lang.ID\u lang==2和ps\u feature\u value\u lang.value==“我要翻译的值”我要用翻译后的特征值更新ps\u feature\u value\u 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