Para crear un ticket de soporte, comience con una búsqueda

Exportación productos: exportar un campo de idioma de la clase Producto

Prerrequisitos

El campo debe estar ya presente en la base de datos y en una anulación de la clase Product_Lang

Objetivo

Queremos exportar un campo añadido a la clase Product_lang de PrestaShop.

Configuración

Para añadir el campo a la lista de campos disponibles para la exportación de productos, haga clic en el botón add_dis.png desde la interfaz "Añadir campo", e introduzca la siguiente información:

¿Cuál es el ID del campo? mi_campo (debe coincidir exactamente con el nombre del campo en la clase Producto)

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ú Idoma y rellene:

my_field

- seleccione el menú Proceso de exportación y rellene:

if (in_array($switchObject, array('my_field'))) {
    $field = $p->my_field;
}

CASO ESPECIAL

Si el campo está presente en la base de datos pero no se ha realizado la anulación en la clase Product, aún es posible obtener su valor añadiendo código que genere una consulta SQL en lugar de utilizar el objeto Product.

if ($switchObject == 'my_field') {
    $field = '';
    $sql = "SELECT `".$switchObject."` FROM " . _DB_PREFIX_ . "product_lang
            WHERE id_product=" . (int)$id_product."
            AND id_lang=".(int)$getIDlangByISO[$f['lang']]."
            AND id_shop=".(int) $selected_shops_id;

        $field = (string)Db::getInstance()->getValue($sql);
}

Este código debe adaptarse a sus necesidades.

Cierre la ventana de edición de los campos personalizados y utilice el campo en su asignación de exportación.



Artículos relacionados