Hola a tod@s
Estoy buscando e intentando adaptar un script para importar productos desde un csv automáticamente, en un Prestashop
He visto una para Prestashop 1.6: Script Importacion Automatica Prestashop 1.6
Me gustaría poder adaptarlo para Prestashop 1.7 y dejarlo aquí para compartirlo
He adaptado parte del código, pero en Prestashop 1.7 ha cambiado las funcionalidades:
<?php // definimos la cabecera y el juego de caracteres header("Content-Type: text/html;charset=utf-8"); // colocamos el directorio de adminxxxxx en la variable cogiendo el directorio donde está este script con getcwd define('_PS_ADMIN_DIR_', getcwd()); // incluimos los parametros que se definieron en la instalación include(_PS_ADMIN_DIR_.'../../config/config.inc.php'); // incluimos las funciones php de Prestashop que vamos a usar // Que esta dentro de la carpeta del admin donde entrtamos al panel include(_PS_ADMIN_DIR_.'/functions.php'); // incluimos el script php que hace las importaciones de CSV de Prestashop include_once '../../controllers/admin/AdminImportController.php'; // Duda si la funcionalidad para importar productos en PS 1.7 esta en: //include_once '../../controllers/admin/AdminProductsController.php'; // loadProductsPost() -> loadProduct() ? function loadProduct() { $_POST = array ( 'tab' => 'AdminImport', 'skip' => '1', 'csv' => 'productos.csv', 'forceIDs' => '0', 'match_ref' => '1', 'convert' => '', 'entity' => '1', 'separator' => ';', 'multiple_value_separator' => ',', 'iso_lang' => 'es', 'import' => 'Importar datos CSV', 'type_value' => array ( 1 => "ID", 2 => "Activo (0/1)", 3 => "Nombre *", 4 => "Categorías (x,y,z...)", 5 => "Precio impuestos excluidos", 6 => "ID regla de impuestos", 7 => "Precio de coste", 8 => "En oferta (0/1)", 9 => "Valor del descuento", 10 => "Porcentaje de descuento", 11 => "Descuento desde (aaaa-mm-dd)", 12 => "Descuento hasta (aaaa-mm-dd)", 13 => "Referencia nº", 14 => "N° de referencia proveedor", 15 => "Proveedor", 16 => "Marca", 17 => "EAN13", 18 => "UPC", 19 => "Ecotasa", 20 => "Anchura", 21 => "Altura", 22 => "Profundidad", 23 => "Peso", 24 => "Cantidad", 25 => "Cantidad mínima", 26 => "Visible en", 27 => "Coste adicional del envío", 28 => "Unidad para el precio unitario", 29 => "Precio unitario", 30 => "Resumen", // Short Description 31 => "Descripción", // Long Description 32 => "Etiquetas (x,y,z...)", 33 => "Meta título", 34 => "Meta keywords", 35 => "Meta descripción", 36 => "URL reescrita", 37 => "Etiqueta cuando se encuentra en stock", 38 => "Etiqueta para cuando se permiten pedidos en espera", 39 => "Disponible para pedidos (0 = No, 1 = Yes)", 40 => "Fecha de disponibilidad del producto", 41 => "Fecha de creación del producto", 42 => "Mostrar Precio (0 = No, 1 = Yes)", 43 => "URL's de las imágenes (x,y,z...)", // Url de la imagen 44 => "Textos alternativos de imagen (x,y,z...)", 45 => "Elimine las imágenes existentes (0 = No, 1 = Yes)", 46 => "Característica (Nombre:Valor:Posición:Personalizado)", // Feature( Name:Value:Position ) 47 => "Solo disponible por Internet (0 = No, 1 = Yes)", 48 => "Estado", 49 => "Personalizable (0 = No, 1 = Yes)", 50 => "Se pueden subir archivos (0 = No, 1 = Yes)", 51 => "Campos de texto (0 = No, 1 = Yes)", 52 => "Fuera de stock", // Out of stock 53 => "ID / Nombre de la tienda", 54 => "Administración Avanzada de Stock ", 55 => "Dependiendo del stock", 56 => "Almacén", ), ); } $import = New AdminImportController(); loadProduct();
¿Alguno ha podido adaptar un script similar? o ¿sabéis que funciones tengo que usar para enviar el csv?
Muchas gracias!