Prestashop

Sync Data

Aprende cómo sincronizar y personalizar datos desde tu tienda PrestaShop

Sincroniza tus productos, atributos y datos de pedidos de PrestaShop con Clerk. Esta guía cubre la personalización de los datos de productos, la selección de los productos a importar y la gestión de la sincronización de pedidos.

Personalización de los datos de productos #

En PrestaShop, puedes añadir la mayoría de los atributos simples directamente desde el panel de administración, pero también puedes crear atributos personalizados directamente en el código.

Enviar atributos simples #

Nota: Esta función solo está disponible a partir de la versión v.5.3.2. Consulta esta guía para saber cómo actualizar.

En el panel de administración de PrestaShop, comienza por ir a la siguiente sección:

Prestashop 1.7: Catálogo -> Atributos y Características Prestashop 1.6 : Catálogo -> Atributos de productos

Aquí puedes ver todos los atributos que tienes disponibles:

Attributes and features page

Busca los nombres de los atributos que deseas agregar.

Luego ve a Módulos y servicios -> Clerk -> Configurar.

En Configuración de sincronización de datos, escribe los Nombres de los atributos separados por comas en Campos adicionales para productos.

También puedes activar campos como Incluir características del producto para importar todas las características de los productos a Clerk.

Ambas opciones están disponibles en las versiones 1.6 y 1.7 de PrestaShop:

Data sync settings

Después de agregar tus atributos, ve a my.clerk.io->Data y haz clic en Start New Data Sync en la esquina superior derecha.

Start new data sync

Si los atributos que deseas enviar ya están disponibles como parte de los datos de productos configurables/agrupados en el administrador de PrestaShop, pueden sincronizarse fácilmente en la última versión de tu plug-in.

Aparecerán como child_attribute, por ejemplo, child_color, child_skus, etc.

Child attributes

Enviar atributos personalizados #

Los atributos personalizados, que son más avanzados, pueden añadirse a través de los archivos del módulo en FTP.

Este archivo gestiona los atributos del producto:

modules->clerk->controllers->front->product.php

Cada atributo tiene su propio fieldHandler , que se usa para extraerlo, en la función __construct

Field handler code

Simplemente añade tu atributo aquí, con la siguiente sintaxis:

Add field handler syntax
$this->addFieldHandler('CLERK_ATTRIBUTE_NAME',function($product){
return PRESTASHOP_LOGIC;
});

Donde CLERK_ATTRIBUTE_NAME define el nombre que quieres que tenga en Clerk y PRESTASHOP_LOGIC es el código para extraer el atributo de PrestaShop.

Por último, incluye tus nuevos atributos en la función getDefaultFields() al final del archivo.

Get default fields function

Selección de productos a importar #

Puedes configurar el módulo de PrestaShop para enviar todos los productos a Clerk, en vez de solo los vendibles, como ocurre por defecto.

Para hacerlo, comienza por encontrar este archivo en FTP:

modules->clerk->controllers->front->product.php

En la función getJsonResponse() localiza esta línea:

$products = $product->getProducts($this->getLanguageId(), $this->offset, $this->limit, $this->order_by, $this->order, false, false);

Simplemente cambia el último argumento de true a false.

Get products function

Si haces esto, te recomendamos que también agregues un atributo adicional a este archivo, que indique cuando un producto no es vendible, para que puedas mostrarlo en tu Diseño.

Asumiendo que creas un atributo llamado is_saleable que es true o false, puedes usarlo así en Designs:

{% raw %}
{% if product.is_saleable %}
   <div class="in-stock">En stock</div>
{% else %}
  <div class="not-in-stock">Sin stock</div>
{% endif %}
{% endraw %}

Finalmente, ve a my.clerk.io -> Data y haz clic en Start New Sync para importar tus nuevos datos.

Start new sync

Desactivar la sincronización de pedidos #

Después de que la primera sincronización de datos se haya realizado con éxito, la sincronización de pedidos desde PrestaShop puede desactivarse ya que el seguimiento de ventas del módulo toma el control.

Para desactivar la sincronización de pedidos, ve a Mejorar => Módulos => Gestor de módulos

Module manager

Desplázate hacia abajo y encuentra el módulo Clerk en la sección otros. Haz clic en Configurar:

Clerk module configuration

Desplázate hasta el campo llamado Configuración para la sincronización de datos y haz clic en SÍ junto al texto Desactivar sincronización de pedidos:

Deactivate order synchronization

Desplázate hasta la parte inferior de la página y pulsa Guardar:

Save settings

Tus cambios se aplicarán de inmediato.

Esta página ha sido traducida por una IA útil, por lo que puede contener errores de idioma. Muchas gracias por su comprensión.