Documentazione · Risoluzione dei problemi
Errori di importazione
Questo documento copre errori, risultati parziali, problemi di dati e passaggi di convalida per il processo di importazione dei veicoli nel plugin ADP Car Market Hub.
Quando utilizzare questo documento
Leggere questo documento quando:
- Un'importazione manuale o un'esecuzione di importazione automatica viene completata, ma in WordPress compaiono meno veicoli del previsto.
- I dati del veicolo (titolo, prezzo, descrizione, campi) sono errati o mancanti dopo l'importazione.
- Il registro di importazione (log) mostra errori per annunci specifici.
- I veicoli non vengono aggiornati anche se i dati dell'annuncio sono cambiati in AutoScout24.
- I veicoli che sono stati rimossi da AutoScout24 sono ancora presenti in WordPress (o viceversa).
Se l'importazione non produce alcun risultato e il log contiene errori di autenticazione o HTTP, iniziare prima con Errori di connessione API.
Panoramica
Il processo di importazione recupera gli annunci di veicoli attivi dall'API di AutoScout24 per ciascun Seller ID configurato e crea o aggiorna gli articoli WordPress del custom post type as24ci_car. Ogni esecuzione riporta il conteggio dei risultati inseriti, aggiornati, ignorati ed errati.
L'importatore applica automaticamente i seguenti filtri:
- Filtro di stato: vengono importati solo gli annunci con
status = activated. Gli annunci inattivi o disattivati vengono ignorati. - Filtro live: vengono importati solo gli annunci con
live = true(o dove il campo è assente). Gli annunci non live vengono ignorati.
Il rilevamento delle modifiche viene utilizzato per evitare aggiornamenti non necessari:
- Se la risposta dell'API include un campo
lastModifiedDatee questo corrisponde al valore memorizzato durante l'ultima importazione, il veicolo viene ignorato (conteggiato come "skipped"). - Se
lastModifiedDateè assente, il plugin ricorre a un hash del contenuto. Se l'hash è invariato, il veicolo viene ignorato.
Le immagini sono gestite separatamente. Se la modalità coda immagini è abilitata (attiva per impostazione predefinita per le esecuzioni cron e REST), solo la prima immagine per veicolo viene scaricata immediatamente. Le immagini rimanenti vengono inserite in una coda asincrona e scaricate da un worker in background. Vedere Errori di importazione immagini per problemi specifici relativi alle immagini.
Requisiti preliminari
- La connessione API è funzionante. Verificare questo aspetto nella pagina Stato del sistema prima di indagare sui problemi di importazione.
- Almeno un Seller ID è configurato nelle impostazioni del plugin.
- L'importatore ha il permesso di scrivere articoli e caricare file multimediali. Vedere Errori di autorizzazione se nel log compaiono errori di accesso.
Passaggi diagnostici
Passaggio 1: Controllare il risultato dell'ultima esecuzione
- Andare nella dashboard di amministrazione del plugin o nella scheda System & Help.
- Controllare l'ora dell'ultima esecuzione dell'importazione e i conteggi dei risultati: inseriti, aggiornati, ignorati, errori.
- Un conteggio elevato di elementi ignorati ("skipped") è normale quando il rilevamento delle modifiche è attivo e la maggior parte degli annunci non è cambiata dall'ultima esecuzione.
- Un conteggio di "errori" diverso da zero indica che l'importazione di annunci specifici è fallita. Procedere al Passaggio 2.
Passaggio 2: Leggere il registro di importazione
Aprire il file di log del plugin all'indirizzo:
wp-content/uploads/as24ci-logs/adp-car-market-hub.log
Cercare le righe contenenti error, failed o lo specifico Listing ID su cui si sta indagando. Pattern utili da cercare:
get_listing_details error– il plugin non ha potuto recuperare i dettagli completi per un annuncio specifico.wp_insert/wp_update error– WordPress ha restituito un errore durante il salvataggio dell'articolo.Import runner– righe di riepilogo all'inizio e alla fine di ogni esecuzione.Hard delete FAILED– non è stato possibile completare l'eliminazione di un veicolo durante la sincronizzazione completa.Full sync skipped– la protezione di sicurezza della sincronizzazione completa si è attivata perché non è stato restituito alcun annuncio remoto.
Se la registrazione dettagliata (verbose logging) è abilitata (impostazione predefinita), si vedranno anche righe per singolo veicolo come:
Import vehicle {listing_id} (seller {seller_id}) begin.
Import vehicle {listing_id} result=inserted.
Import vehicle {listing_id} result=skipped.
Passaggio 3: Verificare lo stato dell'annuncio in AutoScout24
Gli annunci che vengono ignorati dall'importatore perché inattivi o non live non appariranno nel log di importazione come errori; vengono esclusi silenziosamente. Se un veicolo è presente in AutoScout24 ma non viene importato:
- Confermare che lo stato dell'annuncio sia
activatednell'interfaccia di gestione di AutoScout24. - Confermare che l'annuncio sia contrassegnato come live.
- Verificare che l'annuncio appartenga a un Seller ID configurato nelle impostazioni del plugin.
Passaggio 4: Controllare il limite del conteggio dei veicoli
Se sono configurate importazioni automatiche (cron o REST), potrebbe essere impostato un numero massimo di veicoli per esecuzione. Quando questo limite viene raggiunto, l'esecuzione si interrompe e il log registra un messaggio "vehicle limit reached". I veicoli rimanenti verranno elaborati all'esecuzione successiva.
Per verificare:
- Andare alla scheda Import & Limits nelle impostazioni del plugin.
- Controllare l'impostazione Max vehicles per cron run. Un valore pari a
0significa illimitato. - Se il limite è inferiore alla dimensione totale del catalogo, aumentarlo o lasciarlo su
0per consentire un'elaborazione illimitata.
Nota: il rilevamento delle modifiche significa che, in pratica, la maggior parte dei veicoli viene ignorata a ogni esecuzione. Un limite moderato è generalmente sufficiente, a meno che non si disponga di un catalogo molto ampio con modifiche frequenti agli annunci.
Passaggio 5: Verificare la configurazione del Seller ID
- Andare alla scheda Settings del plugin.
- Confermare che il campo Seller ID(s) contenga gli ID corretti, uno per riga o separati da virgole.
- Se sono configurati più Seller ID, confermare che ciascuno sia attivo e accessibile con le credenziali configurate.
Passaggio 6: Controllare la presenza di un blocco di importazione obsoleto
Un transient di blocco dell'importazione (as24ci_cron_import_running) impedisce esecuzioni sovrapposte. Se un'esecuzione precedente è stata interrotta senza rilasciare il blocco, le esecuzioni successive saranno bloccate per un massimo di 40 minuti. Trascorso tale periodo, il blocco viene rimosso automaticamente e l'esecuzione successiva procede.
Se è necessario rimuovere il blocco immediatamente:
- Utilizzare un plugin di gestione dei transient di WordPress o WP-CLI per eliminare il transient
as24ci_cron_import_running. - Oppure attendere la scadenza del TTL di 40 minuti del blocco.
Passaggio 7: Investigare sui problemi di qualità dei dati
Se un veicolo viene importato ma i suoi dati sono errati o incompleti:
- Controllare il log per eventuali voci
wp_insert/wp_update errorper quel Listing ID. - Verificare la risposta API grezza per l'annuncio utilizzando la documentazione dell'API di AutoScout24 o gli strumenti per sviluppatori del fornitore dell'API.
- Controllare se il campo in questione è mappato dal plugin. Il plugin mappa i campi standard degli annunci di AutoScout24 nei post meta di WordPress. I campi personalizzati o non standard potrebbero non essere mappati. Verificare questo comportamento nella versione corrente del plugin prima della pubblicazione.
- Se i contenuti generati dall'intelligenza artificiale sono abilitati e su un articolo è stato impostato un blocco AI (
_as24ci_ai_locked = yes), l'importazione non sovrascriveràpost_contentopost_excerptper quel veicolo. Questo comportamento è progettato per preservare le descrizioni curate manualmente.
Riferimento di configurazione
| Impostazione | Effetto sull'importazione |
|---|---|
| Seller ID(s) | Determina quali account venditore vengono interrogati. Richiesto. |
| Default post status | I nuovi veicoli vengono creati come publish o draft. Le nuove installazioni vengono avviate con draft (impostazione predefinita sicura per la prima configurazione) in modo da poter verificare la mappatura e il layout prima della pubblicazione; cambiarlo in publish nelle impostazioni di automazione quando si è pronti. |
| Default post author | Utente WordPress assegnato come autore degli articoli importati. |
| Import images | Se disabilitato, non viene scaricata alcuna immagine. Predefinito: abilitato. |
| Max images per vehicle | Limita il numero di immagini scaricate per veicolo. 0 = nessun limite. |
| Max vehicles per cron run | Limita il numero di veicoli elaborati per ciascuna esecuzione automatica. 0 = illimitato. |
| Image queue mode | Se abilitato, solo la prima immagine viene scaricata immediatamente; le immagini rimanenti vengono messe in coda. Predefinito: abilitato per le esecuzioni cron/REST. |
| Full sync | Se abilitato, i veicoli non più presenti in AutoScout24 vengono eliminati da WordPress dopo ogni importazione. Predefinito: disabilitato. |
Note operative
- L'importatore tiene traccia dei valori dei post meta
_as24ci_last_modifiede_as24ci_content_hashper ciascun veicolo per rilevare le modifiche. Se questi valori meta sono mancanti o corrotti, l'esecuzione successiva tratterà il veicolo come modificato ed eseguirà un aggiornamento completo. - Il valore del post meta
_as24ci_listing_idviene utilizzato per far corrispondere gli annunci remoti agli articoli locali. Se questo meta manca da un articolo, l'importatore creerà un duplicato invece di aggiornare l'articolo esistente. - La sincronizzazione completa (eliminazione dei veicoli obsoleti) viene eseguita solo quando non è stato raggiunto alcun limite di veicoli durante l'esecuzione. Se un limite interrompe anticipatamente l'esecuzione, la sincronizzazione completa viene saltata per evitare di eliminare erroneamente veicoli che semplicemente non sono stati raggiunti in quell'esecuzione.
- La sincronizzazione completa include una protezione di sicurezza: se il set di annunci remoti restituito dall'API è vuoto, l'eliminazione viene saltata interamente per evitare la rimozione accidentale di tutti i veicoli locali.
- L'importazione viene eseguita con un limite di tempo di esecuzione di 300 secondi (5 minuti) quando viene attivata da WP-Cron o dall'endpoint REST. Sugli ambienti di hosting che limitano
set_time_limit, questo potrebbe non avere effetto. Cataloghi molto grandi potrebbero richiedere l'esecuzione tramite cron del server.
Risoluzione dei problemi
| Sintomo | Causa probabile | Verifica |
|---|---|---|
| L'importazione restituisce 0 inseriti, 0 aggiornati | L'API non restituisce annunci attivi/live per il venditore | Verificare lo stato dell'annuncio in AutoScout24 |
| Tutti i veicoli mostrano lo stato "skipped" | Rilevamento delle modifiche: nulla è cambiato dall'ultima esecuzione | Comportamento normale; verificare modificando un annuncio in AutoScout24 e avviando nuovamente l'importazione |
| Conteggio errori diverso da zero nell'ultima esecuzione | L'importazione di annunci specifici è fallita | Controllare il log per get_listing_details error o wp_insert/wp_update error |
| Conteggio dei veicoli inferiore al previsto | Gli annunci inattivi o non live vengono filtrati | Confermare lo stato dell'annuncio in AutoScout24 |
| L'importazione si ferma prima di elaborare tutti i veicoli | Raggiunto il limite massimo di veicoli per esecuzione | Aumentare o rimuovere il limite nelle impostazioni Import & Limits |
| L'importazione non si avvia | Il blocco dell'importazione è ancora attivo da un'esecuzione precedente | Attendere 40 minuti o eliminare il transient as24ci_cron_import_running |
| I dati del veicolo non si aggiornano | Il rilevamento delle modifiche non rileva alcuna variazione | Verificare che lastModifiedDate o il contenuto siano effettivamente cambiati nella risposta dell'API |
| Il contenuto AI viene sovrascritto dopo l'importazione | Il blocco AI non è impostato sull'articolo | Abilitare il blocco AI sull'articolo, altrimenti l'automazione AI lo imposterà dopo aver generato il contenuto |
| Il contenuto AI non viene aggiornato | Il blocco AI è attivo (_as24ci_ai_locked = yes) | Questo comportamento è progettato così; rimuovere il meta di blocco per consentire alla prossima importazione di aggiornare il contenuto |
| Veicoli eliminati inaspettatamente da WordPress | La sincronizzazione completa è abilitata e l'API ha restituito un set vuoto o parziale | Controllare le impostazioni di sincronizzazione completa e il log per le voci "Full sync completed" |