Magento 1

Sync Data

Agregar atributos de producto adicionales a Clerk mediante la extensión de Magento

Sincroniza los productos, atributos y datos de pedidos de tu Magento 1 a Clerk. Esta guía cubre la personalización de datos de productos, la selección de los productos a importar, el cambio de tamaños de imagen y la gestión de la sincronización de pedidos.

Antes de sincronizar los datos, asegúrate de haber instalado y configurado la extensión Clerk en el backend de tu Magento 1. Consulta la guía de inicio para las instrucciones de instalación.

Configurar la sincronización #

Para sincronizar los datos de tu tienda Magento 1 con Clerk, necesitas configurar la URL de importación en la extensión Clerk e iniciar la sincronización.

  1. En la extensión de Magento, copia la Import URL de tu tienda.
Import URL in settings
  1. Ve a my.clerk.io > Data > Configuration y pega la Import URL en el campo Import URL.

  2. Si planeas usar Email & Audience, configura Collect Emails en Sí en la extensión de Magento y guarda.

  3. Selecciona el idioma para tu dominio si corresponde.

  4. Haz clic en Start Sync y espera a que la sincronización termine.

Data sync configuration

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 Magento1 puede ser desactivada, ya que el seguimiento de ventas de la extensión toma el control.

Para desactivar la sincronización de pedidos, entra en el backend de Magento1, elige SISTEMA en la barra de menú y presiona CONFIGURACIÓN:

System configuration

Selecciona el sitio principal (el sitio que quieres modificar) bajo CURRENT CONFIGURATION SCOPE:

Current configuration scope

Luego haz clic en SETTINGS bajo la pestaña CLERK en la barra lateral izquierda y cambia el campo junto a DISABLE ORDER SYNCHRONIZATION de NO a YES.

Presiona SAVE CONFIG para que los cambios tengan efecto de inmediato:

Disable order synchronization

Cambiar los tamaños de las imágenes #

Por defecto, la extensión Clerk para Magento obtiene imágenes con un tamaño de 210x210 px.

Esto se puede cambiar en el siguiente archivo:

app->code->community->Clerk->Clerk->Catalog->Product.php

En la parte superior de este archivo, las variables $imageHeight y $imageWidth controlan la altura y el ancho de cada imagen:

Image size variables

Cambia estos valores al tamaño que deseas que tengan las imágenes y guarda el archivo.

Luego, ve a my.clerk.io -> Data Sync y ejecuta una nueva sincronización haciendo clic en Start Sync.

Tus nuevas imágenes ahora serán sincronizadas.

Elegir productos a importar #

Mostrar productos agotados #

Si también quieres mostrar productos agotados en tus resultados de Clerk, puedes controlarlo fácilmente en el backend de Magento.

Empieza yendo a:

System -> Configuration -> CLERK -> Settings

Elige tu Store View en el menú de la izquierda y ve a Clerk Settings.

Aquí, configura Include Out Of Stock Products en Yes y haz clic en Save Config:

Include out of stock products

Finalmente, ve a my.clerk.io -> Data y haz clic en Start New Data Sync para importar todos los productos, incluyendo los agotados.

Cambios avanzados #

En Magento, el siguiente archivo controla qué productos son importados a Clerk:

app->code->community->Clerk->Clerk->Model->Productpage.php

La función load($page,$limit) es responsable de controlar la collection de productos que se envían a Clerk.

Por defecto, solo se importan los productos con visibility: both (Catalog, Search) que también estén en stock.

Esto se puede modificar en los siguientes dos lugares:

Product collection function

Si cambias los productos importados por Clerk, recomendamos encarecidamente que también agregues un atributo extra que indique cuando un producto no es vendible o visible, para poder mostrarlo en tu Design y filtrarlo.

Suponiendo que crees un atributo llamado is_saleable cuyo valor sea true o false, puedes usarlo así en Designs:

{% if product.is_saleable %}
   <div class="in-stock">In Stock</div>
{% else %}
  <div class="not-in-stock">Not In Stock</div>
{% endif %}

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

Start new data sync

Personalizar los datos de productos #

En Magento 1, puedes agregar atributos personalizados de producto desde el backend de Magento o a través de la extensión Clerk en el código, si es necesario.

Agregar atributos simples #

Nota: Esta función solo está disponible a partir de la v.4.2.3.

Si los atributos que deseas enviar ya están disponibles como atributos simples en tu administración de Magento, se pueden agregar fácilmente en la página de la Extensión.

  1. En el backend de Magento, ve a Catalog -> Attributes -> Manage Attributes

  2. Encuentra los attribute codes de los atributos que deseas agregar:

Manage attributes page
  1. Ve a System -> Configuration
System configuration
  1. Bajo Clerk -> Settings escribe tus atributos en Additional Fields y haz clic en Save Config:
Additional fields
  1. Tras implementar 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 en tus productos configurables/asociados en la administración de Magento, se pueden sincronizar 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

Agregar atributos mediante código #

Si tu atributo utiliza una función estándar de Magento, esto se puede implementar directamente en Product.php:

app->code->community->Clerk->Clerk->code->Model->Catalog->Product.php

La función getClerkExportData() construye el objeto de producto, con todos los atributos:

Get clerk export data function

Luego, puedes agregar nuevos atributos en la lista con esta sintaxis:

$data->setAttributeName($this->insertMagentoLogic());

donde setAttributeName define el nombre que tendrá en Clerk y insertMagentoLogic(); utiliza una lógica de Magento para extraer el valor del producto.

Usar funciones de atributos personalizadas #

A veces, un atributo de Magento puede requerir una lógica más avanzada que una simple función.

En este caso, localiza este archivo:

app->code->community->Clerk->Clerk->Model->Catalog->Productbase.php

En Productbase.php puedes escribir funciones PHP avanzadas para cargar atributos personalizados.

Productbase.php file

Después de definir una función, puedes incluirla en Product.php igual que las funciones existentes.

Por ejemplo:

$data->setAge($this->getAge());

Tras implementar 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

Modificar la extensión #

Agregar/cambiar datos de productos #

Si deseas agregar atributos extra o modificar los existentes para tus productos, debes localizar estos archivos:

app->code->community->Clerk->Clerk->Model->Catalog->Product.php

app->code->community->Clerk->Clerk->Model->Catalog->Productpage.php

Product.php construye el modelo de producto y te permite agregar atributos simples.

Productpage.php te permite crear lógicas avanzadas para obtener atributos y usarlos en Product.php.

Product and productpage files

Cambiar datos de categorías #

Tal vez necesites reestructurar nombres de categorías o eliminar ciertas categorías de Clerk.

En estos casos, busca este archivo:

app->code->community->Clerk->Clerk->Model->Catalog->Product.php

Este archivo gestiona qué categorías se incluyen y los datos id, name, URL, y subcategories para cada categoría.

No puedes agregar datos extra a cada categoría, pero puedes modificar lo que se envía.

Category data handling

Estilizar el powerstep #

El powerstep tiene un estilo estándar, pero quizá desees modificarlo para que coincida con tus diseños.

Estos archivos se usan para el estilo:

app->design->frontend->base->default->template->clerk->powerpage.phtml

app->design->frontend->base->default->template->clerk->powerpopup.phtml

skin->frontend->base->default->clerk->style.css

powerpage.phtml contiene el HTML para la page mientras que powerpopup.phtml es para el popup.

style.css contiene el CSS para todas las partes de la extensión Clerk, incluido el Powerstep.

Puedes usar estos archivos para modificar el aspecto del Powerstep.

Powerstep styling files

Modificar la página de búsqueda #

Si deseas cambiar el diseño de la página de Search, agregar un slider a la página de no resultados, etc., necesitas encontrar este archivo:

app->design->frontend->base->default->template->clerk->powerpage.phtml

Esto te permite cambiar el embedcode de Search y otras partes de la página de búsqueda.

Search page template

Cambiar los títulos de la búsqueda en vivo #

Los títulos mostrados en Live-Search para productos y categorías se pueden cambiar en este archivo:

app->design->frontend->base->default->template->clerk->livesearch.phtml

Aquí simplemente traduce Categories y Products a lo que prefieras:

Live search template

Productos agrupados como variantes #

Por defecto, Magento utiliza Configurable Products para gestionar productos principales y variantes.

La extensión Clerk está diseñada para soportar esto, pues es la mejor práctica en Magento.

Sin embargo, si has configurado tus Variants usando Grouped Products, el seguimiento de ventas no funcionará, ya que se rastrearán los ID’s de productos que Clerk no ha importado de tu tienda Magento.

Esto se debe a que normalmente las Variants no son visibles.

Clerk no podrá ver conexiones entre productos cuando no son importados:

Grouped products issue

Para Clerk, por lo general no importa cuál variante se compra, siempre que se rastree el producto " main" al que pertenece.

Para solucionar esto, debes modificar 2 archivos de la extensión para que coincidan con tu configuración.

El seguimiento de ventas #

El archivo que genera los datos de seguimiento de ventas es:

app->code->Block->SalesTracking.php

En este archivo, usualmente alrededor de la línea 65, se utiliza el siguiente fragmento de código para obtener el ID del producto comprado:

Sales tracking code

Esto debe modificarse para que, sin importar qué variante de producto agrupado se haya adquirido, siempre se envíe el ID del producto “main”.

Los pedidos importados #

El mismo proceso se debe aplicar a los pedidos previos que son importados para saber qué productos “main” se han comprado anteriormente.

Este archivo lo gestiona:

app->code->Model->Orderpage.php

Alrededor de la línea 44, en la función orderFormatter($order), se envía el ID del producto desde Magento:

Order formatter function

Cambia esto usando la misma lógica que en el seguimiento de ventas.

Comprobar si tus cambios funcionan #

Ahora, ve a my.clerk.io -> Data y haz clic en Start New Data Sync para importar los datos más recientes:

Start new data sync

Procede a realizar un pedido de prueba comprando un producto que tenga variants.

Después, entra en Orders y abre el pedido que acabas de realizar.

Si puedes ver los productos Main en el pedido, con su nombre e imagen, tu código funciona:

Orders overview

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