Documentation · Dépannage

Erreurs d'importation

Ce document couvre les échecs, les résultats partiels, les problèmes de données et les étapes de validation pour le processus d'importation de véhicules dans l'extension ADP Car Market Hub.

Quand utiliser ce document

Lisez ce document lorsque :

  • Une importation manuelle ou une exécution d'importation automatique se termine, mais moins de véhicules que prévu apparaissent dans WordPress.
  • Les données du véhicule (titre, prix, description, champs) sont incorrectes ou manquantes après l'importation.
  • Le journal d'importation affiche des erreurs pour des annonces spécifiques.
  • Les véhicules ne sont pas mis à jour alors que les données de l'annonce ont changé dans AutoScout24.
  • Les véhicules qui ont été retirés de AutoScout24 sont toujours présents dans WordPress (ou vice versa).

Si l'importation ne produit aucun résultat et que le journal contient des erreurs d'authentification ou HTTP, commencez d'abord par API Connection Errors.

Aperçu

Le processus d'importation récupère les annonces de véhicules actives depuis l'API AutoScout24 pour chaque Seller ID configuré et crée ou met à jour les publications WordPress du type de publication personnalisé (CPT) as24ci_car. Chaque exécution signale le nombre de résultats insérés, mis à jour, ignorés et en erreur.

L'importateur applique automatiquement les filtres suivants :

  • Filtre de statut : seules les annonces avec status = activated sont importées. Les annonces inactives ou désactivées sont ignorées.
  • Filtre Live : seules les annonces avec live = true (ou lorsque le champ est absent) sont importées. Les annonces non publiées (unlive) sont ignorées.

La détection des modifications est utilisée pour éviter les mises à jour inutiles :

  • Si la réponse de l'API inclut un champ lastModifiedDate et qu'il correspond à la valeur stockée lors de la dernière importation, le véhicule est ignoré (comptabilisé comme "ignoré").
  • Si lastModifiedDate est absent, l'extension se rabat sur un hachage du contenu. Si le hachage est inchangé, le véhicule est ignoré.

Les images sont gérées séparément. Si le mode file d'attente des images est activé (activé par défaut pour les exécutions cron et REST), seule la première image de chaque véhicule est téléchargée immédiatement. Les images restantes sont placées dans une file d'attente asynchrone et téléchargées par un processus en arrière-plan. Voir Image Import Errors pour les problèmes spécifiques aux images.

Prérequis

  • La connexion API fonctionne. Vérifiez cela sur la page d'état du système avant d'enquêter sur les problèmes d'importation.
  • Au moins un Seller ID est configuré dans les réglages de l'extension.
  • L'importateur a l'autorisation d'écrire des publications et de téléverser des médias. Voir Permission Errors si des erreurs d'accès apparaissent dans le journal.

Étapes de diagnostic

Étape 1 : Vérifier le résultat de la dernière exécution

  1. Allez sur le tableau de bord d'administration de l'extension ou sur l'onglet System & Help.
  2. Regardez l'heure de la dernière exécution de l'importation et le nombre de résultats : insérés, mis à jour, ignorés, erreurs.
  3. Un nombre élevé de "ignorés" est normal lorsque la détection des modifications est active et que la plupart des annonces n'ont pas changé depuis la dernière exécution.
  4. Un nombre d'"erreurs" supérieur à zéro indique que des annonces spécifiques ont échoué. Passez à l'étape 2.

Étape 2 : Lire le journal d'importation

Ouvrez le fichier journal de l'extension à l'adresse :

wp-content/uploads/as24ci-logs/adp-car-market-hub.log

Recherchez les lignes contenant error, failed ou le Listing ID spécifique sur lequel vous enquêtez. Modèles utiles à rechercher :

  • get_listing_details error – l'extension n'a pas pu récupérer les détails complets d'une annonce spécifique.
  • wp_insert/wp_update error – WordPress a renvoyé une erreur lors de l'enregistrement de la publication.
  • Import runner – lignes de résumé au début et à la fin de chaque exécution.
  • Hard delete FAILED – une suppression de véhicule lors de la synchronisation complète n'a pas pu se terminer.
  • Full sync skipped – la protection de sécurité de la synchronisation complète s'est déclenchée car aucune annonce distante n'a été renvoyée.

Si le journal d'activité détaillé (verbose) est activé (par défaut), vous verrez également des lignes par véhicule telles que :

Import vehicle {listing_id} (seller {seller_id}) begin.
Import vehicle {listing_id} result=inserted.
Import vehicle {listing_id} result=skipped.

Étape 3 : Vérifier le statut de l'annonce dans AutoScout24

Les annonces qui sont ignorées par l'importateur parce qu'elles sont inactives ou non publiées n'apparaîtront pas dans le journal d'importation comme des erreurs ; elles sont silencieusement exclues. Si un véhicule est présent dans AutoScout24 mais n'est pas importé :

  1. Confirmez que le statut de l'annonce est activated dans l'interface de gestion AutoScout24.
  2. Confirmez que l'annonce est marquée comme publiée (live).
  3. Vérifiez que l'annonce appartient à un Seller ID configuré dans les réglages de l'extension.

Étape 4 : Vérifier la limite du nombre de véhicules

Si des importations automatiques (cron ou REST) sont configurées, un nombre maximum de véhicules par exécution peut être défini. Lorsque cette limite est atteinte, l'exécution s'arrête et le journal enregistre un message "limite de véhicules atteinte". Les véhicules restants seront traités lors de la prochaine exécution.

Pour vérifier :

  1. Allez dans l'onglet Import & Limits dans les réglages de l'extension.
  2. Vérifiez le réglage Max vehicles per cron run. Une valeur de 0 signifie illimité.
  3. Si la limite est inférieure à la taille totale de votre catalogue, augmentez-la ou laissez-la sur 0 pour permettre un traitement illimité.

Note : la détection des modifications signifie que, dans la pratique, la plupart des véhicules sont ignorés à chaque exécution. Une limite modérée est généralement suffisante, sauf si vous avez un très grand catalogue avec des modifications d'annonces fréquentes.

Étape 5 : Vérifier la configuration du Seller ID

  1. Allez dans l'onglet Settings de l'extension.
  2. Confirmez que le champ Seller ID(s) contient les bons identifiants, un par ligne ou séparés par des virgules.
  3. Si plusieurs Seller IDs sont configurés, confirmez que chacun est actif et accessible avec les identifiants configurés.

Étape 6 : Vérifier la présence d'un verrou d'importation obsolète

Un verrou d'importation temporaire (as24ci_cron_import_running) empêche les exécutions simultanées. Si une exécution précédente a été interrompue sans libérer le verrou, les exécutions suivantes seront bloquées pendant un maximum de 40 minutes. Après cette période, le verrou est automatiquement effacé et l'exécution suivante se poursuit.

Si vous devez effacer le verrou immédiatement :

  • Utilisez une extension de gestion des transients WordPress ou WP-CLI pour supprimer le transient as24ci_cron_import_running.
  • Ou attendez que la durée de vie (TTL) de 40 minutes du verrou expire.

Étape 7 : Enquêter sur les problèmes de qualité des données

Si un véhicule est importé mais que ses données sont incorrectes ou incomplètes :

  1. Vérifiez le journal pour détecter d'éventuelles entrées wp_insert/wp_update error pour ce Listing ID.
  2. Vérifiez la réponse API brute pour l'annonce en utilisant la documentation de l'API AutoScout24 ou les outils de développement du fournisseur d'API.
  3. Vérifiez si le champ en question est mappé par l'extension. L'extension mappe les champs d'annonce standard de AutoScout24 vers les métadonnées de publication WordPress. Les champs personnalisés ou non standard peuvent ne pas être mappés. Vérifiez ce comportement dans la version actuelle de l'extension avant de publier.
  4. Si le contenu généré par IA est activé et qu'un verrou IA (_as24ci_ai_locked = yes) a été défini sur une publication, l'importation n'écrasera pas post_content ou post_excerpt pour ce véhicule. Ceci est conçu ainsi pour préserver les descriptions rédigées manuellement.

Référence de configuration

RéglageEffet sur l'importation
Seller ID(s)Détermine quels comptes de vendeur sont interrogés. Requis.
Default post statusLes nouveaux véhicules sont créés en tant que publish ou draft. Les nouvelles installations sont initialisées avec draft (réglage par défaut sécurisé pour la première configuration) afin que vous puissiez vérifier le mapping et la mise en page avant de publier ; changez-le en publish dans les réglages d'automatisation lorsque vous êtes prêt.
Default post authorUtilisateur WordPress attribué comme auteur des publications importées.
Import imagesLorsqu'il est désactivé, aucune image n'est téléchargée. Par défaut : activé.
Max images per vehicleLimite le nombre d'images téléchargées par véhicule. 0 = pas de limite.
Max vehicles per cron runLimite le nombre de véhicules traités par exécution automatisée. 0 = illimité.
Image queue modeLorsqu'il est activé, seule la première image est téléchargée immédiatement ; les images restantes sont mises en file d'attente. Par défaut : activé pour les exécutions cron/REST.
Full syncLorsqu'il est activé, les véhicules qui ne sont plus présents dans AutoScout24 sont supprimés de WordPress après chaque importation. Par défaut : désactivé.

Notes opérationnelles

  • L'importateur suit les valeurs de métadonnées de publication _as24ci_last_modified et _as24ci_content_hash pour chaque véhicule afin de détecter les modifications. Si ces valeurs de métadonnées sont manquantes ou corrompues, la prochaine exécution traitera le véhicule comme modifié et effectuera une mise à jour complète.
  • La valeur de métadonnée de publication _as24ci_listing_id est utilisée pour faire correspondre les annonces distantes aux publications locales. Si cette métadonnée est manquante dans une publication, l'importateur créera un doublon au lieu de mettre à jour la publication existante.
  • La synchronisation complète (suppression des véhicules obsolètes) n'est exécutée que lorsqu'aucune limite de véhicules n'a été atteinte pendant l'exécution. Si une limite arrête l'exécution prématurément, la synchronisation complète est ignorée pour éviter de supprimer incorrectement des véhicules qui n'ont tout simplement pas été atteints lors de cette exécution.
  • La synchronisation complète comprend une protection de sécurité : si l'ensemble des annonces distantes renvoyé par l'API est vide, la suppression est entièrement ignorée pour éviter le retrait accidentel de tous les véhicules locaux.
  • L'importation s'exécute avec une limite de temps d'exécution de 300 secondes (5 minutes) lorsqu'elle est déclenchée par WP-Cron ou le point de terminaison REST. Sur les environnements d'hébergement qui restreignent set_time_limit, cela peut ne pas s'appliquer. Les très grands catalogues peuvent nécessiter une exécution via le cron du serveur.

Dépannage

SymptômeCause probableÀ vérifier
L'importation renvoie 0 inséré, 0 mis à jourL'API ne renvoie aucune annonce active/publiée pour le vendeurVérifier le statut de l'annonce dans AutoScout24
Tous les véhicules s'affichent comme "ignorés"Détection des modifications : rien n'a changé depuis la dernière exécutionComportement normal ; vérifiez en modifiant une annonce dans AutoScout24 et en relançant
Nombre d'erreurs supérieur à zéro lors de la dernière exécutionDes annonces spécifiques n'ont pas pu être importéesVérifier le journal pour get_listing_details error ou wp_insert/wp_update error
Nombre de véhicules inférieur à ce qui était attenduLes annonces inactives ou non publiées sont filtréesConfirmer le statut de l'annonce dans AutoScout24
L'importation s'arrête avant de traiter tous les véhiculesLimite maximale de véhicules par exécution atteinteAugmenter ou supprimer la limite dans les réglages Import & Limits
L'importation ne démarre pasLe verrou d'importation est toujours actif depuis une exécution précédenteAttendre 40 minutes ou supprimer le transient as24ci_cron_import_running
Les données du véhicule ne se mettent pas à jourLa détection des modifications ne trouve aucun changementVérifier si lastModifiedDate ou le contenu a réellement changé dans la réponse de l'API
Le contenu IA est écrasé après l'importationLe verrou IA n'est pas défini sur la publicationActiver le verrou IA sur la publication, sinon l'automatisation IA le définira après la génération du contenu
Le contenu IA n'est pas mis à jourLe verrou IA est actif (_as24ci_ai_locked = yes)C'est le comportement prévu ; supprimez la métadonnée de verrou pour permettre à la prochaine importation de rafraîchir le contenu
Véhicules supprimés de WordPress de manière inattendueLa synchronisation complète est activée et l'API a renvoyé un ensemble vide ou partielVérifier les réglages de synchronisation complète et le journal pour les entrées "Full sync completed"

Documents connexes