Documentación · Manual del usuario
Flujo de trabajo de importación de vehículos
Este documento describe cómo importar listados de vehículos desde la API de AutoScout24 a WordPress utilizando el plugin ADP Car Market Hub. Cubre tanto los métodos de importación manual como la importación programada automática, así como las opciones de importación, la detección de cambios, la gestión de imágenes y la sincronización completa (Full Sync).
Cuándo utilizar este documento
Lea este documento si:
- Necesita realizar o supervisar una importación de vehículos por primera vez o bajo demanda.
- Desea comprender la diferencia entre la importación manual, el Batch-Wizard y la importación programada (automática).
- Está solucionando fallos de importación o resultados inesperados.
- Necesita comprender cómo gestiona el plugin los listados actualizados, las imágenes y los vehículos eliminados.
Para una comprobación diaria y concisa del estado de la importación, consulte Flujos de trabajo de uso diario.
Descripción general
El plugin obtiene los listados de vehículos de la API de AutoScout24 para todos los Seller IDs configurados y almacena cada listado como una entrada de WordPress del tipo de contenido personalizado (CPT) as24ci_car. Los metadatos del vehículo (precio, kilometraje, especificaciones, equipamiento, imágenes) se almacenan en los metadatos de la entrada (post meta) y en una tabla de base de datos personalizada dedicada.
Existen tres formas de activar una importación:
- Importación de un solo vehículo: importa o vuelve a importar un listado desde la pestaña Car Importer.
- Batch-Wizard: ejecuta manualmente una importación completa de todos los listados con supervisión del progreso en tiempo real. Adecuado para la importación inicial o una actualización completa forzada.
- Importación programada automática: se ejecuta a un intervalo configurado a través de WP-Cron o un cron de servidor externo. Es el método recomendado para la sincronización continua.
Las tres vías utilizan la misma lógica de importación subyacente: conectarse a la API, obtener los listados para cada vendedor configurado, compararlos con la copia local mediante hashes de contenido y crear o actualizar las entradas de WordPress según sea necesario.
Requisitos o prerrequisitos
- Se deben introducir y guardar credenciales de API válidas (API Base URL, Seller ID(s), Client ID, Client Secret, Token URL y Audience) en ADP Car Market Hub → Settings antes de que se pueda ejecutar cualquier importación.
- El sitio de WordPress debe poder realizar conexiones HTTPS salientes al endpoint de la API configurado.
- Para las importaciones de imágenes, el directorio de subidas (uploads) de WordPress debe tener permisos de escritura.
- Debe estar configurado al menos un Seller ID. El plugin lee la opción
as24ci_seller_ids(lista de IDs separados por comas).
Instrucciones paso a paso
Importar un solo vehículo
- Navegue a ADP Car Market Hub → Car Importer.
- La tabla Pending vehicles muestra los listados disponibles en la API que aún no se han importado a WordPress.
- Busque el vehículo que desea importar.
- Haga clic en Import junto al listado.
- La página se recarga y el vehículo aparece en la tabla Imported vehicles de arriba.
- Para actualizar un vehículo ya importado (por ejemplo, tras un cambio de precio en AutoScout24), búsquelo en la tabla Imported vehicles y haga clic en Re-import.
Ejecutar el Batch-Wizard (importación completa manual)
El Batch-Wizard es el método recomendado para la importación completa inicial de todos los listados y para realizar una actualización forzada fuera de la programación habitual.
- Navegue a ADP Car Market Hub → Import & Limits.
- Haga clic en el botón Trigger now.
- El Batch-Wizard se inicia y muestra una barra de progreso en tiempo real que indica: - Total de vehículos a procesar. - Vehículos procesados hasta el momento. - Tiempo restante estimado. - Acción actual (insertando, actualizando o omitiendo).
- El asistente procesa un vehículo a la vez de forma predeterminada (tamaño de lote adaptativo: 1–5 vehículos por paso). Esto evita errores de tiempo de ejecución de PHP en hostings compartidos.
- Utilice el botón Pause para suspender temporalmente la importación. Haga clic en Resume para continuar.
- Utilice el botón Abort para detener la importación. Los vehículos ya procesados en la ejecución actual permanecerán en WordPress.
- Una vez que el asistente finaliza, un resumen muestra el número de vehículos insertados, actualizados, omitidos y los errores que hayan ocurrido.
Configurar y ejecutar importaciones automáticas programadas
Para una sincronización continua, active el programador automático:
- Navegue a ADP Car Market Hub → Import & Limits.
- Active la opción Automatic import (la casilla de verificación o el interruptor en la pestaña).
- Elija el intervalo de importación (import interval): - Cada hora (Hourly) - Cada 6 horas (Every 6 hours) - Dos veces al día (Twice daily) - Diariamente (Daily) - Personalizado (mínimo 15 minutos; configure el valor de los minutos en el campo de intervalo personalizado)
- Para las programaciones diarias y de dos veces al día, configure opcionalmente la hora de inicio (start time).
- Guarde los ajustes de automatización.
- El WP-Cron de WordPress activará ahora las importaciones en el intervalo configurado cada vez que el sitio reciba tráfico.
Para sitios en producción, se recomienda el cron de servidor:
- Establezca el Cron mode en Server cron en la pestaña Import & Limits.
- Copie la URL del endpoint de cron que se muestra (la URL incluye un token de seguridad).
- Añada una tarea cron en el servidor (por ejemplo, a través de
crontab) que llame a la URL del endpoint utilizandocurlowgetcon el intervalo deseado. - Si regenera el token (Import & Limits → Regenerate token), actualice su tarea cron con la nueva URL.
Cómo funcionan las importaciones
Detección de cambios
El importador calcula y almacena un hash de contenido y un hash de imagen para cada vehículo importado. En las siguientes ejecuciones de importación, un vehículo se omite si ninguno de los hashes ha cambiado. Esto mantiene las ejecuciones de importación rápidas, especialmente para inventarios grandes donde la mayoría de los vehículos no presentan cambios.
Cuando se actualiza un listado en AutoScout24 (por ejemplo, un cambio de precio o nuevas imágenes), los hashes dejan de coincidir y el vehículo se actualiza en WordPress.
Códigos de resultado de la importación
Cada vehículo procesado durante una ejecución de importación se contabiliza en una de estas cuatro categorías:
| Resultado | Significado |
|---|---|
| Inserted | Se ha creado una nueva entrada de vehículo en WordPress |
| Updated | Se ha actualizado una entrada de vehículo existente con nuevos datos |
| Skipped | Los datos del vehículo no han cambiado; no se requiere ninguna acción |
| Error | Ha ocurrido un problema con este vehículo (consulte la pestaña Logs) |
El resumen de importación en la pestaña Import & Limits y en el Batch-Wizard muestra estos recuentos después de cada ejecución.
Importación de imágenes y la cola de imágenes
- Cuando Import images está activado en Settings, el importador descarga las imágenes de los vehículos desde la API y las adjunta a la entrada de WordPress.
- Max images per vehicle (Settings) limita cuántas imágenes se descargan por listado (0 = ilimitado).
- Modo de cola de imágenes (activado por defecto para importaciones por cron/REST): durante las importaciones programadas, solo se descarga inmediatamente la primera imagen de cada vehículo. Todas las imágenes restantes se añaden a una cola persistente en segundo plano y se procesan de forma asíncrona mediante el ejecutor de la cola de imágenes, que se ejecuta aproximadamente cada 5 minutos. Esto evita errores de tiempo de espera de ejecución de PHP durante importaciones grandes.
- El ejecutor de la cola de imágenes procesa hasta 30 imágenes por lote.
- El tamaño actual de la cola y el estado del ejecutor se pueden ver en la pestaña System & Help.
- Para procesar la cola de imágenes de inmediato, haga clic en Run image queue now en la pestaña System & Help.
- Conversión a WebP: si está activada en Settings y GD o Imagick están disponibles, las imágenes se convierten al formato WebP al descargarse. El nivel de calidad es configurable (1–100, por defecto 80).
Bloqueo de importación (Import lock)
El plugin utiliza un bloqueo de ejecución basado en transitorios con un tiempo de vida (TTL) de aproximadamente 40 minutos. Si ya hay una ejecución de importación en curso cuando llega un segundo activador (desde WP-Cron, cron de servidor o un botón manual), el segundo activador se omite y se registra un mensaje de "ya en curso" en el registro. Si el bloqueo ha caducado (es más antiguo que el TTL), se borra automáticamente para que la siguiente ejecución pueda continuar.
Sincronización completa (Full Sync)
Cuando Full Sync está activado en la pestaña Import & Limits, el importador compara el conjunto de IDs de listados devueltos por la API con todas las entradas de vehículos en WordPress. Cualquier entrada local cuyo ID de listado no esté en el listado remoto actual se elimina de forma permanente, incluyendo todas las imágenes adjuntas.
- Active Full Sync solo cuando desee que el inventario de WordPress refleje exactamente el listado en vivo de AutoScout24.
- Las eliminaciones por Full Sync se registran en el log del plugin con los recuentos de
sync_deleted. - Cuando Full Sync está desactivado, los vehículos eliminados de AutoScout24 permanecen en WordPress hasta que se eliminen manualmente.
Estado de la entrada del vehículo
Los vehículos importados se crean con el estado de entrada configurado en Settings → Default post status (publish o draft). Cuando un vehículo se actualiza en una ejecución de importación posterior, su estado de entrada no cambia: una entrada publicada sigue estando publicada.
Referencia de configuración
| Ajuste | Ubicación | Descripción |
|---|---|---|
| API Base URL | Settings | Endpoint de la API de AutoScout24 (debe incluir https://) |
| Seller ID(s) | Settings | Identificadores de vendedor/concesionario separados por comas |
| Client ID | Settings | Client ID de OAuth para la API |
| Client Secret | Settings | Client Secret de OAuth para la API |
| Default post status | Settings | Estado de entrada aplicado a los vehículos recién importados (publish o draft) |
| Import images | Settings | Activa o desactiva la descarga de imágenes durante las importaciones |
| Max images per vehicle | Settings | Número máximo de imágenes descargadas por listado (0 = ilimitado) |
| Convert to WebP | Settings | Convierte las imágenes descargadas a WebP (requiere GD o Imagick) |
| WebP quality | Settings | Calidad de compresión para la conversión a WebP (1–100) |
| Auto import enabled | Import & Limits | Activa la programación de importación automática de WP-Cron |
| Import interval | Import & Limits | Frecuencia de la programación (cada hora, 6h, dos veces al día, diario, personalizado) |
| Cron mode | Import & Limits | WP-Cron (por defecto) o cron de servidor |
| Max vehicles per cron run | Import & Limits | Limita el número de vehículos procesados por ejecución programada (0 = ilimitado) |
| Image queue (cron) | Import & Limits | Activa el modo de cola de imágenes en segundo plano para importaciones por cron/REST |
| Full Sync | Import & Limits | Elimina los vehículos locales que no se encuentren en el listado remoto actual |
Notas operativas
- Múltiples Seller IDs: el importador se ejecuta por separado para cada Seller ID configurado. Un error en un vendedor no detiene las importaciones de los demás.
- Robustez del cron: el ejecutor de la importación eleva el límite de tiempo de ejecución de PHP a 300 segundos durante las ejecuciones activadas por cron/REST. En entornos de hosting que restringen
set_time_limit(), es posible que esto no tenga efecto. - Tamaño de lote del Batch-Wizard: el asistente adapta su tamaño de lote (1–5 vehículos por paso) para mantenerse dentro de los límites seguros de tiempo de ejecución.
- Activación manual durante un cron activo: si el cron automático se está ejecutando cuando hace clic en Trigger now, la activación manual se omitirá debido al bloqueo de ejecución. Espere a que finalice la ejecución actual o borre el bloqueo.
- Log de importación: todos los eventos de importación (llamadas a la API, vehículos insertados/actualizados/omitidos/con error, descargas de imágenes) se escriben en el registro del plugin. Revise ADP Car Market Hub → Logs para obtener más detalles.
- Registro detallado (Verbose logging): si está activado, el registro incluye detalles por vehículo y por imagen. Desactívelo en producción para reducir el crecimiento del archivo de registro.
Troubleshooting
| Síntoma | Causa probable | Comprobación |
|---|---|---|
| No aparecen anuncios en el Car Importer | Las credenciales de la API son incorrectas o el endpoint de la API no es accesible | Verifique las credenciales en Ajustes; ejecute la prueba de conexión en Sistema y Ayuda |
| La importación se ejecuta pero no aparecen vehículos nuevos | El estado predeterminado de la publicación es draft, o todos los anuncios ya se habían importado y no han cambiado | Compruebe el estado de la publicación en Ajustes; revise el resumen de importación para ver los recuentos de "omitidos" |
| Las imágenes no se descargan | La importación de imágenes está desactivada, el directorio de subidas no tiene permisos de escritura o el ejecutor de la cola de imágenes no está funcionando | Compruebe Ajustes → Importar imágenes; revise Sistema y Ayuda para ver el estado de las subidas y el tamaño de la cola |
| La importación programada no se ejecuta | WP-Cron está desactivado o el sitio no tiene tráfico | Cambie al cron del servidor o verifique que el endpoint del cron sea accesible |
| La importación muestra muchos errores | Límite de tasa de la API excedido, problemas de red o datos de anuncios malformados | Revise la pestaña Registros para ver los detalles del error; compruebe el estado de la API con su socio de integración |
| Los vehículos desaparecen inesperadamente | La sincronización completa (Full Sync) está activada y los vehículos se eliminaron de AutoScout24 | Compruebe los Registros en busca de entradas de sync_deleted; desactive la sincronización completa si no es intencionado |
| El Batch-Wizard se detiene o agota el tiempo de espera | El límite de tiempo de ejecución de PHP es demasiado bajo | Compruebe en Sistema y Ayuda el valor del tiempo de ejecución; contacte con su proveedor de hosting |
| El bloqueo de importación impide las ejecuciones | Una ejecución de importación anterior finalizó de forma inesperada sin liberar el bloqueo | Espere hasta 40 minutos para que el bloqueo expire automáticamente, o compruebe los Registros para obtener más detalles |