Protezione con password per PrestaShop: nascondere pagine e prodotti al pubblico
"Nascondilo al pubblico" sembra un'unica operazione. In PrestaShop, in realtà, sono quattro operazioni diverse che indossano lo stesso cappotto, e scegliere quella sbagliata è il modo in cui i commercianti finiscono con prezzi all'ingrosso visibili ai clienti al dettaglio, un prodotto pre-lancio "segreto" presente nella sitemap, o una pagina CMS protetta da una singola password condivisa in modo talmente debole da essere quasi pubblica. La piattaforma offre strumenti veri per ogni caso — gruppi clienti, modalità B2B, visibilità prodotto, modalità manutenzione — ma nascondono cose diverse, a livelli diversi, con garanzie molto diverse. Questa guida spiega quale controllo corrisponde a quale intento, i percorsi esatti nel back office e il punto in cui "nascosto dalla navigazione" smette di significare "sicuro".
Una cosa va chiarita subito, perché cambia ogni raccomandazione qui sotto: il controllo degli accessi non è crittografia. Gli strumenti di visibilità di PrestaShop decidono cosa viene mostrato al browser di un visitatore; non bloccano i file sottostanti. Torneremo sul punto in cui questa distinzione diventa concreta. Per il lavoro più ampio di mettere in sicurezza il negozio stesso — amministrazione, server, intestazioni — questo articolo resta nel suo ambito e rimanda alla checklist di hardening della sicurezza PrestaShop.
Revisionato a giugno 2026 rispetto al comportamento di PrestaShop 1.6, 1.7, 8 e 9 per gruppi clienti, B2B, visibilità prodotto e manutenzione, e rispetto all'attuale modulo mprpasswordprotect.
Prima di tutto, decidi cosa stai davvero nascondendo
Prima di toccare un'impostazione, definisci l'intento — perché il controllo giusto ne deriva direttamente:
- Un intero segmento di pubblico (acquirenti all'ingrosso, membri, un segmento B2B) deve vedere cose che i visitatori al dettaglio non dovrebbero vedere. Questo è un problema di gruppi.
- Un singolo prodotto deve esistere ma non comparire ancora nella navigazione o nella ricerca (pre-lancio, campione accessibile solo da link). Questo è un problema di visibilità prodotto.
- L'intero negozio deve essere invisibile mentre lo costruisci o lo prepari, tranne che per te. Questo è un problema di modalità manutenzione.
- Una pagina specifica (un listino prezzi, documentazione per partner, una landing page per membri) deve stare dietro una password. Questo è un problema di password per pagina — ed è quello per cui PrestaShop non offre una soluzione nativa.
Scegli lo strumento sbagliato e finirai per limitare troppo (clienti B2C paganti esclusi) o troppo poco (contenuti privati indicizzati da Google). Le sezioni seguenti affrontano ogni intento uno alla volta.
Metodo 1 — Gruppi clienti: nascondere un segmento di pubblico, non un singolo elemento
Questa è la risposta più nativa per PrestaShop e quella a cui la maggior parte dei commercianti dovrebbe pensare per prima quando la domanda è "chi è autorizzato a vedere questo". L'accesso è controllato a livello di categoria e si propaga ai prodotti al suo interno.
- Crea un gruppo in Parametri negozio → Impostazioni clienti → Gruppi (per esempio "Ingrosso", "VIP", "Membri").
- Apri la categoria riservata e, nel pannello Accesso gruppo, deseleziona i tre gruppi predefiniti forniti da PrestaShop — Visitatore (browser non autenticati, inclusi i crawler dei motori di ricerca), Ospite e Cliente — lasciando selezionato solo il tuo gruppo privato.
- Assegna i clienti corretti a quel gruppo (manualmente dalla pagina cliente, oppure automaticamente — ne parleremo più sotto).
Perché questa è l'opzione pulita: quando il gruppo Visitatore è deselezionato, la categoria e i suoi prodotti scompaiono davvero per chiunque non abbia effettuato l'accesso nel gruppo corretto. Nella navigazione e nella ricerca normali di PrestaShop non compaiono negli elenchi di categoria né nei risultati di ricerca per chi non è autenticato nel gruppo corretto — perché il crawler è il gruppo Visitatore. Il livello di accesso si occupa del nascondimento, quindi per la navigazione normale non c'è un ulteriore passaggio del tipo "ricordati anche di metterlo in noindex". Una cautela da dire chiaramente: l'output della sitemap dipende dal tuo modulo sitemap/SEO e da come sono assegnati i prodotti, quindi un prodotto presente anche in un'altra categoria pubblica, o un modulo sitemap poco rigoroso, può comunque esporre l'URL — controlla la sitemap generata e tutti i prodotti in più categorie prima di fidarti della restrizione. Quindi cosa cambia? I tuoi prezzi riservati restano tra te e gli acquirenti verificati senza dover sorvegliare un file robots.
Il limite reale: i gruppi richiedono account. Un visitatore deve registrarsi ed essere inserito nel gruppo corretto prima di vedere qualcosa, quindi questa soluzione è adatta a relazioni che controlli (ingrosso, iscrizione) più che a "voglio condividere un link con uno sconosciuto". Se vuoi limitare i prezzi per tutto il negozio invece che categoria per categoria, la modalità B2B e l'opzione prezzi per gruppo gestiscono quel caso — è il punto successivo.
Metodo 2 — Modalità B2B più nascondimento prezzi per gruppo: limitare i prezzi agli acquirenti professionali
PrestaShop include una modalità B2B integrata in Parametri negozio → Impostazioni clienti → Abilita modalità B2B. Sii preciso su ciò che fa davvero, perché spesso viene sopravvalutata. Attivandola, aggiunge campi B2B agli account clienti — Azienda, SIRET, APE, Importo massimo consentito, Numero massimo di giorni di pagamento, Valutazione rischio — e una voce Saldo autorizzato nel menu Clienti. Questa è la modalità B2B nativa: campi aziendali aggiuntivi e gestione del credito. Da sola, non nasconde i prezzi e non aggiunge un passaggio di approvazione dell'account — le nuove registrazioni sono attive immediatamente come qualsiasi account B2C.
Il controllo che nasconde davvero i prezzi è separato e si trova a livello di gruppo: apri un gruppo in Parametri negozio → Impostazioni clienti → Gruppi e deseleziona Mostra prezzi. Disattivandolo per il gruppo Visitatore (e Ospite), i browser non autenticati possono ancora vedere il catalogo ma non i prezzi e non il pulsante di aggiunta al carrello, mentre i clienti professionali autenticati in un gruppo con Mostra prezzi attivo vedono tutto. Se hai davvero bisogno che ogni nuovo account sia verificato manualmente prima di poter acquistare, quel passaggio di approvazione non è nativo — serve un modulo di registrazione/approvazione aggiuntivo.
Quindi la ricetta nativa corretta per un negozio riservato al commercio professionale è la modalità B2B (per i campi aziendali e i limiti di credito) combinata con l'opzione di gruppo "Mostra prezzi" (per limitare i prezzi) — non la modalità B2B da sola. Questo schema è adatto a un portale distributori o a un marchio solo all'ingrosso. È inadatto a un negozio misto B2B/B2C, perché nascondere i prezzi al gruppo Visitatore li nasconde anche ai clienti al dettaglio di passaggio, e un cliente al dettaglio che non vede il prezzo semplicemente se ne va. Per negozi misti, non limitare i prezzi a livello di intero negozio — usa il Metodo 1 (un gruppo ingrosso sulle categorie professionali) e lascia aperto il catalogo al dettaglio.
| Vuoi… | Usa | Perché |
|---|---|---|
| Prezzi all'ingrosso nascosti, catalogo al dettaglio aperto | Gruppi clienti (Metodo 1) | Limita solo le categorie professionali; il B2C non è interessato |
| Intero negozio riservato ai professionisti, prezzi limitati | Modalità B2B + "Mostra prezzi" disattivato per gruppo (Metodo 2) | Campi B2B/limiti di credito + nascondimento prezzi per gruppo; l'approvazione account richiede un modulo |
| Un prodotto nascosto dalla navigazione, link ancora funzionante | Visibilità prodotto (Metodo 3) | Per singolo prodotto, senza account richiesto |
| Intero negozio invisibile mentre lo costruisci | Modalità manutenzione (Metodo 4) | Tutto o niente, con IP in whitelist |
| Intero front office dietro una password condivisa | Modulo password (Metodo 5) | Nessun equivalente nativo in PrestaShop; la protezione con password condivisa per singola pagina richiede un'implementazione più specifica |
Metodo 3 — Visibilità prodotto: nascondere un prodotto senza toccare gli account
Ogni prodotto ha un'impostazione di visibilità nella scheda Opzioni (nelle vecchie versioni 1.6 si trovava nell'area SEO/associazioni). I quattro valori fanno cose diverse e i nomi possono trarre in inganno:
- Ovunque — mostrato negli elenchi di categoria e trovabile nella ricerca. Lo stato normale.
- Solo catalogo — appare durante la navigazione delle categorie, ma la ricerca interna non lo restituisce.
- Solo ricerca — restituito dalla ricerca, ma non elencato durante la navigazione delle categorie.
- Da nessuna parte — la pagina prodotto esiste ancora al suo URL, ma nulla nel negozio la collega. Nessuna categoria, nessuna ricerca, nessun menu.
Da nessuna parte è l'impostazione per pre-lanci e "condividi con poche persone": la pagina è online, quindi un link diretto funziona, ma un visitatore casuale non può capitarci sopra. Il punto critico da dire chiaramente: questa è oscurità, non sicurezza. L'URL può essere indovinabile se i tuoi slug seguono uno schema, e il prodotto può comunque finire nella sitemap a seconda del modulo sitemap che usi e della sua configurazione — verifica l'XML generato, perché una sitemap che lo elenca consegnerebbe il "segreto" direttamente a Google. Considera "Da nessuna parte" accettabile per un campione pre-lancio a basso rischio, e mai come modo per proteggere qualcosa che conta davvero. La ricetta pulita per il pre-lancio: imposta la visibilità su Da nessuna parte, condividi l'URL con le poche persone che ne hanno bisogno e passa a Ovunque il giorno del lancio.
Metodo 4 — Modalità manutenzione: nascondere l'intero negozio mentre lo costruisci
In Parametri negozio → Generale → Manutenzione puoi disattivare completamente il front office e sostituirlo con una pagina di manutenzione, inserendo i tuoi IP nella lista consentita (il campo IP manutenzione — "Aggiungi il mio IP" compila quello da cui sei collegato) così tu e il tuo cliente continuate a vedere il negozio online.
È davvero utile in due momenti: quando costruisci un nuovo negozio che non vuoi ancora far indicizzare o trovare, e quando prepari un restyling da far vedere al cliente prima della messa online. Quello che non è: un sistema di controllo accessi — è tutto o niente. Non puoi aprire una sezione ai membri e chiudere il resto; chiunque sia fuori dalla lista IP vede lo stesso muro. Per un caso continuativo del tipo "i membri vedono X, il pubblico vede Y", servono i gruppi (Metodo 1), non la modalità manutenzione. Mentre il negozio è in manutenzione restituisce un HTTP 503, che è il segnale corretto per dire ai crawler "ripassa più tardi" invece di "questa pagina non esiste più".
Metodo 5 — Proteggere con password una pagina specifica (il vuoto nativo)

Il blocco con password viene configurato dal modulo, inclusi il bypass per i dipendenti e il comportamento noindex.
Il modulo Password Protect intercetta le richieste in anticipo tramite l'hook del dispatcher, prima che il contenuto della pagina venga renderizzato:
public function getHooks()
{
return [
'actionDispatcherBefore',
];
}
Ecco il caso che la piattaforma non copre. Non esiste nessuna impostazione nativa di PrestaShop per mettere una pagina CMS, una categoria o un prodotto dietro una semplice richiesta di password. Gli strumenti nativi sono tutti basati su account (gruppi) oppure tutto-o-niente (manutenzione). Anche l'attuale modulo mprpasswordprotect è un blocco per l'intero front office: reindirizza le richieste di front office e dei moduli a una pagina con password condivisa finché il visitatore non si autentica. È adatto a negozi pre-lancio e front office privati; non offre ancora protezione mirata per singola pagina, categoria o prodotto.
Il modulo distribuito è utile quando l'obiettivo è un front office protetto da password: un negozio pre-lancio, un'anteprima privata del catalogo o un'area temporanea di revisione per il cliente. Si aggancia a actionDispatcherBefore, verifica la password condivisa, imposta un cookie di front office e può inviare una risposta 503/noindex mentre il blocco è attivo. Quindi cosa ti dà in pratica? Un intero front office può essere nascosto dietro una password condivisa senza modifiche al core e senza l'attrito degli account cliente. Per un listino rivenditori, una pagina CMS, una categoria o un prodotto, usa gruppi nativi/visibilità prodotto quando gli account sono accettabili, oppure considera la protezione con password per singola entità una funzionalità mancante da implementare correttamente.
Sii lucido su cosa sia e cosa non sia una password condivisa: un solo segreto, condiviso da tutti quelli che lo conoscono, senza tracciamento per singolo utente. È il livello giusto per contenuti "moderatamente privati, con impatto limitato" (un lookbook stagionale, una scheda partner). È il livello sbagliato per dati legalmente sensibili — per quelli, vedi la nota sulla sicurezza più sotto.
Combinare i metodi negli scenari reali
La maggior parte delle configurazioni reali combina due o tre di questi metodi, perché gli intenti si sovrappongono:
- Catalogo all'ingrosso: gruppi clienti per limitare le categorie professionali + un passaggio di verifica prima di concedere il gruppo + prezzi specifici per gruppo. Se raccogli anche dettagli per la richiesta di accesso professionale (partita IVA, tipo di attività), gli schemi per acquisire e usare dati di registrazione aggiuntivi sono descritti in informazioni cliente extra e blocchi IP.
- Prodotto pre-lancio: visibilità impostata su Da nessuna parte + un link condiviso con poche persone + passaggio a Ovunque il giorno del lancio.
- Pagina riservata ai membri: gruppi clienti se i membri hanno già account; un blocco con password per singola pagina richiede un'implementazione mirata del modulo, mentre l'attuale modulo Password Protection protegge il front office nel suo insieme.
- Nuovo negozio ancora in costruzione: modalità manutenzione con il tuo IP nella lista consentita fino al lancio.
La trappola SEO: nascosto nell'interfaccia, indicizzato in Google
PrestaShop nativo non genera sitemap XML da solo, quindi l'esclusione va gestita nel modulo sitemap che usi, come gsitemap o Advanced SEO Sitemap Builder.

Il blocco di accesso e le regole della sitemap devono essere coerenti.
L'errore più comune qui non è un'impostazione che non funziona — è una pagina "nascosta" che resta silenziosamente pubblica per i crawler. Due regole mantengono privati i contenuti privati:
- I contenuti limitati per gruppo sono sicuri per impostazione predefinita. Poiché un crawler è un Visitatore non autenticato, tutto ciò che hai nascosto al gruppo Visitatore è nascosto anche a Googlebot. Non serve altro.
- La visibilità "Da nessuna parte" non è sicura per impostazione predefinita. La pagina esiste ancora e, se il tuo modulo SEO/sitemap la include, hai pubblicato l'URL su Google. Controlla che i prodotti non linkati siano esclusi dalla sitemap e, per qualsiasi cosa debba restare privata, aggiungi una direttiva noindex invece di affidarti al fatto che "nessuno la linka".
Se usi una suite SEO/sitemap, controlla cosa emette davvero prima di fidarti di una restrizione — una sitemap troppo generosa può annullare un'impostazione di visibilità curata. E ricorda che una pagina protetta da password non avrebbe dovuto comparire in una sitemap pubblica fin dall'inizio; il blocco gestisce gli esseri umani, l'esclusione dalla sitemap gestisce i bot.
Dove finisce il controllo accessi e inizia la sicurezza
Questa è la linea da interiorizzare. Tutto ciò che è sopra controlla cosa viene mostrato a un browser. Nulla crittografa i file o garantisce che una persona determinata non possa raggiungere la risorsa sottostante. In particolare:
- Le immagini di un prodotto vivono a URL prevedibili e possono essere recuperabili direttamente anche quando la pagina prodotto è limitata, perché i file immagine non sono dietro lo stesso controllo di accesso della pagina.
- Un URL "Da nessuna parte" o condiviso può trapelare tramite cronologia del browser, intestazioni referrer o qualcuno che inoltra il link.
- I contenuti caricati nella pagina ma nascosti con CSS restano comunque nel sorgente della pagina per chiunque apra gli strumenti di sviluppo.
Quindi, per materiale davvero riservato — contratti di prezzo firmati, documenti legali, qualsiasi cosa per cui l'esposizione sia un problema reale — non appoggiarti affatto alla visibilità del front office. Servilo da un sistema correttamente protetto con autenticazione reale e, idealmente, protezione dei file a livello server. I controlli di visibilità di PrestaShop sono pensati per il controllo accessi commerciale (chi vede il prezzo all'ingrosso), non per proteggere dati critici per la sicurezza. Se stai rafforzando il negozio in modo più ampio, le regole .htaccess per sicurezza e prestazioni coprono la protezione di file e directory a livello server, mentre la guida in linguaggio semplice alla sicurezza del tuo negozio offre il contesto più ampio. E se qualcosa di privato è già stato esposto, la guida alla risposta a una violazione dei dati è la prossima pagina da leggere.
Domande frequenti
Come posso proteggere con password una singola pagina CMS o un prodotto in PrestaShop?
Non esiste un'impostazione nativa di PrestaShop per farlo — gli strumenti nativi sono basati su account (gruppi clienti) oppure tutto-o-niente (modalità manutenzione). L'attuale modulo mprpasswordprotect mette l'intero front office dietro una password condivisa, il che è adatto a un negozio pre-lancio o a un'anteprima privata, ma non è ancora per singola pagina, categoria o prodotto. Per una singola pagina in cui gli account sono accettabili, usa i gruppi clienti; il vero targeting con password per singola entità è una funzionalità che richiede un'implementazione specifica.
Qual è la differenza tra modalità B2B e nascondere i prezzi?
Sono controlli separati e spesso vengono confusi. La modalità B2B (Parametri negozio → Impostazioni clienti) aggiunge solo campi aziendali e gestione del credito — Azienda, SIRET, APE, importo massimo consentito, giorni di pagamento, valutazione rischio. Non nasconde i prezzi e non aggiunge l'approvazione dell'account. Per nascondere i prezzi apri un gruppo e deseleziona Mostra prezzi per il gruppo Visitatore (e Ospite). Un negozio solo per professionisti ha bisogno di entrambi: modalità B2B per i campi, opzione di gruppo per i prezzi.
Se imposto un prodotto su "Da nessuna parte", è privato?
No — è oscurità, non sicurezza. La pagina prodotto esiste ancora al suo URL, quindi un link diretto funziona; "Da nessuna parte" significa solo che nulla nel negozio la linka. L'URL può essere indovinabile se i tuoi slug seguono uno schema e, a seconda del modulo sitemap, può comunque essere pubblicato su Google. Usalo per campioni pre-lancio a basso rischio, verifica che siano esclusi dalla sitemap generata e aggiungi una direttiva noindex per qualsiasi cosa debba davvero restare fuori dalla ricerca.
Nascondere un prodotto o una categoria li tiene anche fuori da Google?
Dipende dal metodo usato. I contenuti limitati per gruppo sono sicuri per impostazione predefinita — un crawler è un Visitatore non autenticato, quindi tutto ciò che è nascosto al gruppo Visitatore è nascosto anche a Googlebot, senza passaggi aggiuntivi. La visibilità "Da nessuna parte" non è sicura per impostazione predefinita: la pagina esiste e un modulo sitemap troppo generoso può ripubblicare l'URL. Controlla sempre l'XML che il tuo modulo sitemap emette davvero prima di fidarti di un'impostazione di visibilità.
Posso usare questi strumenti per proteggere documenti legalmente sensibili?
No. Ogni metodo qui controlla cosa viene mostrato a un browser; nessuno crittografa i file. Le immagini dei prodotti vivono a URL prevedibili e possono essere recuperabili anche quando la pagina è limitata, i link condivisi trapelano tramite cronologia e header referrer, e i contenuti nascosti con CSS restano comunque nel sorgente della pagina. Per contratti firmati, documenti legali o qualsiasi cosa per cui l'esposizione sia un problema reale, servili da un sistema correttamente protetto con autenticazione reale e protezione dei file a livello server — non tramite la visibilità del front office.
Il punto chiave: "nascondilo al pubblico" si scompone in nascondere un segmento di pubblico (gruppi), un singolo prodotto (visibilità), l'intero negozio (manutenzione) o una pagina (un modulo password) — e ogni strumento nativo garantisce qualcosa di diverso. Abbina lo strumento all'intento, controlla due volte che la sitemap non stia ripubblicando in silenzio ciò che hai nascosto, e non confondere mai il mostrare meno con il mettere in sicurezza. Fallo, e il contenuto giusto arriverà alle persone giuste senza che un singolo listino prezzi privato finisca nei risultati di ricerca di qualcuno.
Commenti
Ancora nessun commento. Sii il primo!
Sii il primo a fare una domanda o a condividere un feedback utile.
Lascia un commento
Condividi una domanda, un dettaglio di installazione o un feedback utile per un altro lettore.