Le champ doit être déjà présent en base de données.
Nous souhaitons importer un champ dans la table ps_product.
Pour ajouter le champ à la liste des champs disponibles dans le mapping d'import produits, cliquez sur le bouton de l'interface "Ajout de champ", puis saisissez les informations suivantes :
Quel est l'ID du champ ? : my_field (doit correspondre exactement au nom du champ dans la table)
SC crée le champ, il faut maintenant renseigner dans la grille :
ID : my_field
Nom : my_field
Dans le panneau des Propriétés Avancées à droite :
- sélectionnez le menu Processus d'import des déclinaisons, et renseignez :
if ($switchObject == 'my_field' && $GLOBALS['import_value'] != '') {
$value = $GLOBALS['import_value'];
$sql = "SELECT * FROM " . _DB_PREFIX_ . "product WHERE id_product='" . (int)$id_product . "' ";
$pdt_row = Db::getInstance()->ExecuteS($sql);
if (!empty($pdt_row[0]["id_product"])) {
$TODO[] = "UPDATE " . _DB_PREFIX_ . "product SET `".$switchObject."`='" . psql($value) . "' WHERE id_product='" . (int)$id_product . "'";
}
}
Ce code est à adapter à vos besoins.
Fermez la fenêtre d'édition des champs personnalisés et utilisez le champ dans votre mapping d'import.