Prestashop名称验证和修复
问题描述:
我在prestashop 1.6中遇到了自己的csv导入程序问题。当我的产品名称如下所示:2=1 2 battery& 1 pilot)
Prestashop名称验证和修复
Presta的验证得到我的错误是这样的:Property Product->name is not valid
你知道,我怎么必须转换是PRESTA验证不要误会我的错误的名字吗?
我的代码视图这样的:
$object = new Product();
$object->price = number_format($data[$row_header['recommended_selling_price']] * $rate, 2,".","");
$object->id_tax_rules_group = $taxID;
$languages=Language::getLanguages();
foreach($languages as $lang){
$object->name[$lang['id_lang']]=$namecache;
$object->link_rewrite[$lang['id_lang']]= $this->slugify($namecache);
$object->description[$lang['id_lang']]=$data[$row_header['detailed_full_text_en']];
$object->description_short[$lang['id_lang']]=substr($data[$row_header['full_text_EN']], 0, 800);
}
答
其实你可能会解决通过转义或将这样的字符串的问题:
$object->name[$lang['id_lang']] = utf8_encode($namecache);
+0
不幸的是,这个解决方案工作不够好。在我的文件中有德文字符,使用这个功能后,它们被一些奇怪的字符替换。 – bradley546994
尝试的var_dump验证:: isCatalogName($ namecache)和告诉我们结果。至少你可以改变无效字符,然后在导入后找到并替换这些字符 – Melvita
我使用str_replace for =和&syntax以及现在所有的作品。谢谢你的回复:) – bradley546994