Ricerca prodotti PrestaShop: filtri a faccette e pagine SEO
I filtri di un negozio PrestaShop si configurano motore per motore, con prezzi indicizzati per gruppo di clienti ed elenchi filtrati fuori dall'indice. Passaggi, casi concreti e limiti.
Un cliente digita «tshrt» e non trova nulla. Un altro seleziona «Taglia M» e vede prodotti con quella taglia esaurita. Un terzo lascia la categoria perché il filtro del prezzo non corrisponde al prezzo della scheda prodotto. Questi tre casi nascono spesso da filtri che leggono un indice che non segue né i prezzi reali né le parole dei clienti. Advanced Search Pro sostituisce la ricerca a faccette di PrestaShop con motori di filtri configurabili. Ecco come impostarlo, cosa cambia nel negozio e i casi in cui non è adatto.
Come aggiungere i filtri alla pagina dei risultati di ricerca?
Crea un motore di filtri e seleziona «Pagina risultati di ricerca» in «Dove mostrare»: i risultati ricevono i filtri del motore.
Un motore è un blocco di filtri autonomo, con i suoi gruppi, la sua posizione e le sue pagine. Apri Advanced Search Pro > Motori di filtri. «Importa i modelli» riprende i modelli della ricerca a faccette di PrestaShop; «Crea il motore consigliato» propone categorie, prezzo, attributi, caratteristiche, marche, disponibilità e promozioni.
- Apri il motore ed espandi «Dove mostrare».
- Scegli «Tutte le pagine» o «Pagine scelte» e seleziona «Pagina risultati di ricerca».
- Scegli «Colonna sinistra», «Colonna destra» o «Larghezza piena, sopra il contenuto», poi salva.
- Verifica che il motore sia attivo, poi apri Indicizzazione e stato: se il pannello segnala che la ricerca a faccette è attiva, fai clic su «Disattiva la ricerca a faccette».
Su una pagina di risultati i filtri si applicano ai prodotti della ricerca in corso: digitare «vestito» e poi scegliere un colore non mescola il resto del catalogo. La ricerca guidata della home segue un'altra regola: filtra una categoria fissa o l'intero catalogo, poi apre la sua pagina di risultati. La scheda del modulo riassume le posizioni disponibili e la documentazione descrive ogni impostazione di un motore.
Perché il filtro del prezzo non corrisponde al prezzo della scheda?
Perché il filtro legge un indice di prezzi calcolato per gruppo di clienti: uno sconto di gruppo impostato su una categoria vale per ogni prodotto della categoria, come nella scheda.
Il filtro non rilegge la scheda a ogni clic. Legge un indice che contiene il prezzo visto dal cliente: promozioni con le loro date, sconti di gruppo, imposte e valuta del visitatore. Aggiungere, modificare o eliminare uno sconto di gruppo aggiorna i prezzi interessati.
Un gruppo di clienti creato dopo l'installazione non ha ancora i suoi prezzi in quell'indice. Il modulo chiede allora una ricostruzione dei prezzi. La pagina Indicizzazione e stato elenca i gruppi interessati con il messaggio «I prezzi non sono ancora indicizzati per questi gruppi di clienti» e il pulsante «Ricostruisci l'indice». L'attività pianificata completa il lavoro se non fai clic. Durante la ricostruzione gli elenchi restano disponibili.

Come trovare un prodotto quando il cliente digita «tshrt»?
Il modulo segue la ricerca approssimativa di PrestaShop, attiva per impostazione predefinita: «tshrt» trova la t-shirt. Conserva anche tutti i prodotti che contengono tutte le parole digitate, senza limite per parola.
La ricerca approssimativa è un'impostazione di PrestaShop, non del modulo. Quando è attiva, una parola senza corrispondenza viene sostituita con la parola più vicina del catalogo. PrestaShop limita il numero di sostituzioni per ricerca: quattro per impostazione predefinita, quindi cinque parole al massimo. Il modulo rispetta quel limite. Una parola che resta senza corrispondenza viene ignorata, come nella ricerca nativa, e la ricerca non restituisce nulla se non resta nessuna parola.
Una parola molto frequente, presente in più di 5.000 prodotti, non taglia l'elenco. La ricerca conserva i prodotti che contengono tutte le parole digitate, li ordina per pertinenza e poi per identificativo quando due prodotti si somigliano. I caratteri speciali vengono neutralizzati prima della query: un nome come «L'Oréal & Co» non interrompe la ricerca.
Come evitare contenuti duplicati dagli elenchi filtrati?
Gli elenchi filtrati che non corrispondono a nessuna pagina SEO ricevono «noindex, follow», un'impostazione attiva per impostazione predefinita; una selezione che corrisponde a una pagina SEO riceve anche «noindex, follow» e un solo canonical verso quella pagina.
«Elenchi filtrati non indicizzati» si trova in Impostazioni. Tiene fuori dall'indice le combinazioni che i visitatori costruiscono clic dopo clic, così i motori di ricerca indicizzano le categorie e le pagine SEO invece di varianti senza fine.
Una pagina SEO è una categoria con filtri preselezionati, per esempio «Magliette bianche» in Abbigliamento. In Pagine SEO scegli la categoria, seleziona i valori che definiscono la pagina e scrivi in ogni lingua il titolo, l'indirizzo, la meta description e il testo introduttivo. Vengono proposti solo i valori che hanno prodotti nella categoria. La pagina entra nella sitemap quando il modulo Google sitemap di PrestaShop è attivo, e quella sitemap include solo le pagine SEO delle categorie del negozio. La pagina SEO e la pagina dei risultati del modulo conservano i propri tag robots e canonical.
Come mantenere il focus della tastiera nei filtri?
Dopo il pulsante «OK» del prezzo, la rimozione di un filtro attivo o «Cancella tutto», il focus torna nel blocco dei filtri: pulsante dello stesso prezzo, filtro attivo successivo o titolo del blocco.
Senza quel ritorno, chi naviga con la tastiera deve attraversare di nuovo l'intestazione e il menu per ogni filtro rimosso. Il modulo riporta il focus al punto giusto e lo sposta senza far scorrere la pagina. Il numero di prodotti trovati viene annunciato ai lettori di schermo.
Il pannello mobile si chiude con il pulsante di chiusura o il tasto Esc; la soglia mobile è regolabile, 768 px per impostazione predefinita. Per verificare la configurazione, apri una pagina categoria e usa solo Tab, Invio ed Esc: ogni valore deve essere raggiungibile e, rimuovendo un filtro attivo, il focus deve restare nel blocco. Per un controllo completo del percorso, l'audit EAA e WCAG copre questo tipo di verifica pagina per pagina.
Cosa fare quando un catalogo grande rallenta la ricerca?
I contatori vengono da un indice dedicato, non da una scansione del catalogo a ogni clic: imposta «Prodotti per fase di indicizzazione», mantieni attiva l'attività pianificata e lascia che una ricostruzione interrotta riprenda.
Due impostazioni limitano il carico. La cache dei contatori dei filtri conserva i filtri delle pagine senza selezione e, quando la cache di PrestaShop è attiva, tutte le selezioni. «Prodotti per fase di indicizzazione» divide la ricostruzione in lotti, con una barra di avanzamento, senza svuotare i risultati durante l'operazione.
L'attività pianificata indicata in Indicizzazione e stato elabora i prodotti in attesa, completa una ricostruzione iniziata e aggiorna le promozioni che iniziano o finiscono; programmala ogni quindici minuti. Una ricostruzione fermata da un errore riprende alla fase successiva, al passaggio seguente dell'attività o al clic successivo. Il pannello segnala anche i prodotti modificati in attesa e permette di indicizzarli subito.
Per chi è pensato questo modulo e per chi no?
È pensato per un negozio che vende prodotti con combinazioni in più categorie di prodotti e vuole filtri rapidi con pagine di filtri indicizzabili. Si basa sull'indice di ricerca di PrestaShop e su tabelle proprie, non su un motore di ricerca esterno.
Un catalogo di abbigliamento mostra il caso comune: taglie, colori, materiali, marche e promozioni sugli stessi elenchi. Un motore generale filtra tutte le pagine; un motore dedicato a una categoria aggiunge le caratteristiche giuste. L'opzione «Solo combinazioni disponibili» evita che compaia una taglia M esaurita, e una pagina SEO «Magliette bianche» dà a quella combinazione un indirizzo proprio, senza indicizzare le altre.
I limiti da conoscere:
- Il tema deve usare l'elenco prodotti standard di PrestaShop, come Classic o Hummingbird. Il pannello di stato segnala un tema che non sembra usarlo.
- Disattiva la ricerca a faccette di PrestaShop: due moduli di filtri sugli stessi elenchi si ostacolano.
- Non c'è un reindirizzamento 301 verso una pagina SEO: la selezione corrispondente riceve un canonical, non un reindirizzamento.
- I limiti del cursore del prezzo sono numeri interi; il modulo non filtra al centesimo.
- Serve una licenza valida. Senza licenza il modulo si disattiva: i filtri, la ricerca guidata e le pagine SEO non vengono più mostrati e l'indice non viene più aggiornato. Le pagine SEO e la pagina dei risultati rispondono «pagina non trovata», ma i motori, i filtri, le pagine SEO, le impostazioni e l'indice vengono conservati. Apri la pagina di configurazione: appena la licenza è valida, quella pagina riattiva il modulo.
- La disinstallazione elimina le tabelle, le impostazioni e le chiavi di licenza, come indica la conferma.
Dopo la data di scadenza salvata, una licenza resta attiva per sette giorni, coprendo un rinnovo in ritardo. Superato quel termine, il modulo interroga il server al massimo una volta all'ora, con un timeout breve. Un incidente temporaneo del server di licenza non è una scadenza: lascia sette giorni di tolleranza dal primo errore. Solo un verdetto finale (licenza scaduta, sospesa, revocata o non trovata, firma non valida, dominio non registrato) mette fine alla licenza.

Il modulo si installa su PrestaShop 1.7.8, 8.0+ e 9.0+, con PHP 7.4 minimo. Su PHP 7.1 a 7.3 mostra un messaggio chiaro invece di un errore fatale. Per le pagine in cache e i dati strutturati che accompagnano questi elenchi, Cache Pro e Schema Pro completano la configurazione.
Domande frequenti
Perché i filtri non compaiono nella pagina dei risultati di ricerca?
Il filtro del prezzo tiene conto delle promozioni e degli sconti di gruppo?
La ricerca trova i prodotti scritti male?
Google indicizza gli elenchi filtrati?
Il modulo gestisce un catalogo con decine di migliaia di prodotti?
Rimuovere un filtro attivo fa perdere il focus della tastiera?
Prodotti di questo articolo
Advanced Search Pro - Filtri AJAX rapidi e navigazione a faccette
Filtraggio AJAX istantaneo con contatori in tempo reale, ordinamento e paginazione coerenti, senza ricaricare la...
Cache Pro — Full Page Cache with Brotli, Warm-Up & AJAX
Cache di pagine complete: le pagine salvate vengono inviate prima che PrestaShop le costruisca, senza alcuna query...
Schema Pro - Complete JSON-LD Structured Data & Rich Snippets
Product, ProductGroup, Organization, WebSite, BreadcrumbList, FAQPage, CollectionPage e ItemList generati dai dati...
Audit EAA e WCAG 2.1 AA
Analisi di accessibilità WCAG 2.1 AA delle pagine reali, contrasti compresi Correzioni automatiche sicure,...