El campo debe estar ya presente en la base de datos, en las tablas ps_product y ps_product_attribute
Queremos importar información (valor numérico) a un producto desde un archivo CSV.
Si el producto no tiene combinación, se actualiza el campo en la tabla ps_producto.
Si el producto tiene combinaciones, forzamos el valor del producto base a 0 y actualizamos la combinación correspondiente.
Para añadir el campo a la lista de campos disponibles en la asignación de importación de productos, haga clic en el botón desde la interfaz "Añadir campo", e introduzca la siguiente información:
¿Cuál es la identificación del campo? mi_campo (debe coincidir exactamente con el nombre del campo en la tabla)
SC crea el campo, ahora hay que rellenar la cuadrícula:
ID: mi_campo
Nombre: mi_campo
En el panel de propiedades avanzadas de la derecha :
- seleccione el menú Proceso de importación, y rellene:
if ($switchObject == 'my_field' && $GLOBALS['import_value'] != '') {
$TODO[] = "UPDATE " . _DB_PREFIX_ . "product
SET `" . $switchObject . "`='" . importConv2Float($GLOBALS['import_value']) . "'
WHERE id_product=" . (int)$id_product;
}
- seleccione el menú Proceso de importación de combinaciones, y rellene:
if ($switchObject == 'my_field' && isCombinationWithID() && $GLOBALS['import_value'] != '') {
$TODO[] = "UPDATE " . _DB_PREFIX_ . "product SET `".$switchObject."`=0 WHERE id_product=" . (int)$id_product;
$TODO[] = "UPDATE " . _DB_PREFIX_ . "product_attribute SET `".$switchObject."`='" . importConv2Float($GLOBALS['import_value']) . "' WHERE id_product_attribute=" . (int)$id_product_attribute;
}
Este código debe adaptarse a sus necesidades.
Cierre la ventana de edición de campos personalizados y utilice el campo en su asignación de importación.