Documentazione · Risoluzione dei problemi

Problemi con i shortcode

Questo documento copre i problemi che possono verificarsi quando si utilizzano i shortcode del plugin per incorporare gli annunci di veicoli sulle pagine o sui post di WordPress.

Quando utilizzare questo documento

Leggere questo documento quando:

  • Un shortcode viene visualizzato come testo normale (il tag del shortcode è visibile sulla pagina invece dell'output previsto).
  • Un shortcode non produce alcun output o mostra uno spazio vuoto.
  • La griglia dei veicoli viene visualizzata, ma i filtri, l'ordinamento o la paginazione non funzionano correttamente.
  • Il shortcode del filtro di ricerca reindirizza alla pagina errata o non naviga verso i risultati.
  • I file CSS o JavaScript richiesti dal shortcode non vengono caricati sulla pagina.
  • Un shortcode funziona in un contesto (ad es. una pagina standard) ma non in un altro (ad es. un widget o un template personalizzato).

Panoramica

Il plugin registra sei shortcode. I tre seguenti sono i shortcode di elenco/incorporamento trattati in dettaglio in questo documento:

ShortcodeScopo
[as24ci_archive]Mostra la griglia completa degli annunci dei veicoli con filtri, ordinamento e paginazione.
[as24ci_compare]Mostra la vista di confronto dei veicoli.
[as24ci_search_filter]Mostra solo il modulo del filtro di ricerca, senza risultati. Destinato all'uso su una homepage o su una landing page per indirizzare i visitatori a una pagina dei risultati.

Il plugin registra anche [as24ci_favorites] (la pagina dei veicoli salvati / lista dei desideri), [as24ci_location_box] e [as24ci_hours_box] (schede delle sedi e degli orari di apertura). Le indicazioni sul posizionamento e sul "shortcode visualizzato come testo normale" contenute in questo documento si applicano a tutti loro.

I shortcode devono essere inseriti nel campo del contenuto del post di una pagina o di un post di WordPress. Vengono elaborati dall'API standard dei shortcode di WordPress. Non sono supportati nei widget, nei file di template, nel codice PHP o nei contesti in cui do_shortcode() non viene chiamato.

Shortcode disponibili e relativi attributi

[as24ci_archive]

Mostra l'archivio dei veicoli con pre-filtraggio opzionale.

Attributi supportati (tutti opzionali):

AttributoValoriDescrizione
makeStringa slugPre-filtra per marca del veicolo.
modelStringa slugPre-filtra per modello del veicolo.
price_minInteroFiltro prezzo minimo.
price_maxInteroFiltro prezzo massimo.
fuelStringa slugPre-filtra per tipo di carburante.
bodyStringa slugPre-filtra per tipo di carrozzeria.
order_byprice, mileage, dateCampo di ordinamento. Predefinito: date.
orderasc, descDirezione di ordinamento. Predefinito: asc.
per_page12, 24, 48, 72, allRisultati per pagina. Predefinito: 24.

I parametri GET nell'URL sovrascrivono gli attributi del shortcode. Ciò significa che il filtraggio interattivo (con il modulo di filtro che invia i dati alla stessa pagina) funziona correttamente anche quando gli attributi del shortcode forniscono valori predefiniti.

Esempio:

[as24ci_archive make="volkswagen" order_by="price" order="asc" per_page="24"]

[as24ci_compare]

Mostra la vista di confronto dei veicoli. Non sono definiti attributi nel codice del plugin. Il set di veicoli in confronto è gestito dalla sessione del browser del visitatore (cookie o local storage — verificare questo comportamento nella versione corrente del plugin prima della pubblicazione).

Esempio:

[as24ci_compare]

[as24ci_search_filter]

Mostra un modulo di filtro di ricerca autonomo senza i risultati dell'elenco. Il modulo reindirizza a una pagina dei risultati quando viene inviato.

Attributi supportati:

AttributoValoriDescrizione
results_urlURLLa pagina in cui vengono visualizzati i risultati. Il valore predefinito è l'URL dell'archivio del CPT (/cars/).

Esempio:

[as24ci_search_filter results_url="/inventory/"]

Se results_url viene omesso, il plugin tenta di risolvere automaticamente l'URL dell'archivio del CPT. Se non è possibile determinare l'URL dell'archivio del CPT (ad esempio quando si utilizzano permalink semplici), viene utilizzato come alternativa /cars/.

Prerequisiti

  • La pagina contenente il shortcode deve essere pubblicata e accessibile.
  • Per [as24ci_archive]: deve esistere almeno un post di veicolo pubblicato.
  • I permalink non devono essere impostati su "Semplici" affinché la paginazione e il routing pulito degli URL funzionino correttamente.

Passaggi diagnostici

Passaggio 1: Confermare che il shortcode sia nel contenuto del post

I shortcode vengono elaborati solo quando sono inseriti nell'area standard del contenuto del post (il campo post_content). Non vengono elaborati in:

  • Aree widget (widget di testo, widget HTML personalizzati)
  • Campi personalizzati, a meno che do_shortcode() non venga chiamato esplicitamente su tali campi
  • File PHP dei template del tema, a meno che non venga chiamato do_shortcode()
  • Elementi dei page builder che elaborano il contenuto indipendentemente dal filtro the_content

Se il shortcode appare come testo normale ([as24ci_archive] visibile sulla pagina), confermare che si trovi nel corpo del post e non all'interno di un campo personalizzato o di un blocco di codice che esegue l'escape dell'HTML.

Passaggio 2: Confermare che il tag del shortcode sia scritto correttamente

I nomi dei shortcode fanno distinzione tra maiuscole e minuscole. I nomi corretti sono:

  • as24ci_archive
  • as24ci_compare
  • as24ci_search_filter

Un nome di shortcode scritto in modo errato non produrrà alcun output. Verificare la presenza di refusi, spazi extra all'interno delle parentesi o caratteri errati.

Passaggio 3: Verificare che il plugin sia attivo

I shortcode vengono registrati quando il plugin viene caricato. Se il plugin è disattivato o presenta un errore fatale al caricamento, il shortcode non verrà registrato e mostrerà il suo tag come testo normale o non mostrerà nulla.

  1. Andare su Plugin → Plugin installati e confermare che ADP Car Market Hub sia attivo e non presenti indicatori di errore.
  2. Andare su Strumenti → Stato del sito e verificare la presenza di eventuali problemi critici.

Passaggio 4: Verificare che CSS e JavaScript vengano caricati

Il plugin accoda i suoi file CSS e JavaScript per le pagine che contengono i shortcode [as24ci_archive] o [as24ci_compare]. Rileva questo chiamando has_shortcode() sul post_content della pagina corrente.

Se gli asset non vengono caricati:

  1. Confermare che il shortcode si trovi direttamente in $post->post_content. Se il contenuto è assemblato da un page builder che memorizza il contenuto in modo diverso (al di fuori di post_content), has_shortcode() potrebbe restituire false e gli asset non verranno accodati.
  2. Se si utilizza un page builder, utilizzare il suo blocco shortcode o blocco HTML per incorporare il shortcode in modo che diventi parte di post_content.
  3. Controllare gli strumenti di sviluppo del browser per verificare la presenza di errori JavaScript che potrebbero impedire l'inizializzazione del modulo di filtro o della galleria.

Passaggio 5: Verificare l'attributo results_url per [as24ci_search_filter]

Se il modulo del filtro di ricerca reindirizza alla pagina errata o restituisce un errore 404:

  1. Verificare che l'attributo results_url punti alla pagina corretta in cui è incorporato [as24ci_archive] (o all'URL dell'archivio del CPT).
  2. Se non viene fornito alcun results_url, il plugin utilizza get_post_type_archive_link('as24ci_car'). Se questo non restituisce nulla (cosa che può accadere con i permalink semplici), viene utilizzato come alternativa /cars/. Assicurarsi che la pagina di destinazione esista a quell'URL.
  3. Quando si utilizza una normale pagina di WordPress come pagina dei risultati (non l'archivio del CPT), utilizzare il permalink della pagina come results_url.

Passaggio 6: Esaminare la paginazione con gli archivi incorporati tramite shortcode

Su una pagina che utilizza [as24ci_archive], la paginazione utilizza i parametri di query ?paged= (o ?page=):

  1. Facendo clic sulla pagina 2, si dovrebbe aggiungere ?paged=2 all'URL della pagina.
  2. Se la pagina reindirizza per rimuovere i parametri di query (alcuni temi o plugin di caching lo fanno), la paginazione si interromperà.
  3. Confermare che la struttura dei permalink non sia impostata su "Semplici" (i permalink semplici impediscono il corretto routing della paginazione).
  4. Escludere la pagina del shortcode dalla cache della pagina o configurare la cache in modo che vari in base a paged e ai parametri di query del filtro.

Passaggio 7: Verificare il pre-filtraggio con gli attributi del shortcode

Se il shortcode [as24ci_archive] utilizza attributi per pre-filtrare i risultati (ad es. make="bmw") ma il filtro non viene applicato:

  1. Confermare che il valore dell'attributo corrisponda allo slug effettivo di un termine della tassonomia. Gli slug sono in genere in minuscolo con trattini al posto degli spazi (ad es. mercedes-benz e non Mercedes-Benz).
  2. Ricordare che i parametri GET sovrascrivono gli attributi del shortcode. Se il visitatore naviga sulla pagina senza parametri URL, si applicano i valori predefiniti del shortcode. Se l'URL contiene parametri di filtro, questi hanno la precedenza.
  3. Confermare che il filtro pertinente sia abilitato nelle impostazioni dei filtri del plugin. I filtri disabilitati vengono ignorati per il filtraggio guidato dai parametri GET, ma le sovrascritture degli attributi del shortcode aggirano il controllo dei filtri abilitati e si applicano comunque.

Note operative

  • Il shortcode [as24ci_archive] crea la propria WP_Query e sostituisce temporaneamente la query globale $wp_query. Ripristina la query originale dopo il rendering. Se altri plugin o il tema leggono $wp_query durante il contesto di rendering del shortcode, potrebbero vedere valori imprevisti.
  • L'uso di più shortcode sulla stessa pagina è supportato in linea di principio, ma l'inserimento di due shortcode [as24ci_archive] sulla stessa pagina non è una configurazione consigliata e potrebbe produrre comportamenti imprevisti con la paginazione e lo stato del filtro.
  • I shortcode non devono essere nidificati l'uno dentro l'altro.
  • Il shortcode [as24ci_search_filter] mostra solo l'HTML del modulo di filtro. Non include i risultati e non esegue query al database per i dati dei veicoli al momento del rendering. L'URL dell'azione del modulo e i campi di routing nascosti vengono impostati al momento del rendering in base all'attributo results_url o all'URL dell'archivio del CPT.

Risoluzione dei problemi

SintomoCausa probabileVerifica
Shortcode visibile come testo normalePlugin non attivo o shortcode in un contesto non elaboratoConfermare che il plugin sia attivo; spostare il shortcode in post_content
Il shortcode non produce outputNome del shortcode errato; nessun veicolo pubblicatoVerificare l'ortografia; confermare che i veicoli esistano e siano pubblicati
La griglia dell'archivio viene visualizzata ma manca il CSShas_shortcode() fallisce perché il contenuto è al di fuori di post_contentInserire il shortcode direttamente in post_content, non in un campo del builder
I filtri non funzionanoFiltro disabilitato nelle impostazioni o JS non caricatoAbilitare i filtri nel Layout Manager; controllare la console del browser per verificare la presenza di errori
Il filtro di ricerca reindirizza alla pagina errataAttributo results_url mancante o erratoImpostare results_url sulla pagina con [as24ci_archive]
Paginazione non funzionantePermalink semplici o cache che rimuove i parametri di queryPassare a permalink non semplici; configurare le esclusioni della cache
Il pre-filtro per marca non funzionaDiscrepanza dello slugUtilizzare lo slug esatto della tassonomia, non l'etichetta visualizzata

Documenti correlati