
🔒 Come nascondere un post o un'intera categoria dalla homepage di WordPress
Un nuovo post balza in homepage e spinge tutto il resto verso il basso. Dopo un mese hai tre dozzine di articoli così, mentre i contenuti che portano davvero clienti sono scivolati alla quarta schermata. La tentazione di cancellare il superfluo è forte. Non farlo.
WordPress mostra di default gli ultimi post in homepage. Per un blog è normale. Ma se gestisci un catalogo, una knowledge base o un negozio, alcuni contenuti dovrebbero vivere in uno slider, in una landing page o in una newsletter via email. Non c'è motivo di duplicarli in homepage. Bloccarli come bozza significa perdere SEO. Cancellarli è anche peggio.
Ecco cinque modi per nascondere un post o un'intera categoria dalla homepage: dalla privacy integrata in due clic a un filtro a livello di database. Scegli quello più adatto al tuo caso.
💡 Panoramica rapida:
- Nascondere un singolo post a tutti i visitatori: privacy integrata di WordPress, due clic nell'editor.
- Controllare selettivamente la visibilità dei contenuti: il plugin WP Hide Post con impostazioni flessibili per homepage, categorie, ricerca e RSS.
- Aggirare il feed della homepage senza plugin: pubblica il post come pagina e il tema lo ignorerà.
- Escludere un'intera categoria con codice: un hook pre_get_posts in functions.php, otto righe.
- Fare lo stesso con i checkbox: il plugin Ultimate Category Excluder, zero righe di codice.
Perché nascondere i post dalla homepage
Il motivo non è sempre «non voglio mostrare questo». Più spesso è una questione di struttura del sito. Supponi di avere tre categorie: recensioni di plugin, notizie del settore e articoli ospiti. Le recensioni portano traffico dai motori di ricerca e meritano la prima posizione. Le notizie interessano agli iscritti e hanno più senso in uno slider che duplicate nel feed principale. I guest post vivono in una sezione «Rubrica autori» e in homepage creano solo rumore.
Un altro scenario è WooCommerce. Un prodotto è fuori produzione, ma la pagina con descrizione e recensioni deve restare accessibile tramite link diretto. Rimuoverla dal catalogo azzera il peso SEO accumulato. Nasconderla dalla vetrina mantenendo l'URL è un'altra storia.
WordPress non offre un checkbox «non mostrare in homepage» di serie. Ma il problema è risolvibile, dal banale al completamente automatico.
Metodo 1: Visibilità integrata, post privato
L'opzione più semplice. Nessun plugin, nessuna modifica al codice. Funziona quando devi rimuovere uno o due post e l'accesso pubblico non è rilevante.

Apri il post nell'editor. A destra, nel pannello «Pubblica», clicca sul link «Visibilità: Pubblica». Seleziona Privato. Fatto. Il post scompare dalla homepage, dagli archivi e dalla ricerca. Il link diretto funziona, ma solo per amministratori ed editor; i visitatori normali vedono un 404.
Lo svantaggio è ovvio: il contenuto è inaccessibile a tutti tranne che al tuo team. Per bozze riservate e istruzioni interne è l'ideale. Per materiale che i clienti dovrebbero vedere, non lo è.
Se vuoi approfondire l'editor di WordPress, dalla pubblicazione di base alle impostazioni avanzate, WordPress.org mette a disposizione una guida ufficiale all'editor a blocchi.
Metodo 2: Plugin WP Hide Post
Quando la modalità privata non è adatta e hai bisogno di un controllo selettivo della visibilità, questo plugin copre praticamente ogni scenario.

WP Hide Post è un plugin gratuito di Xfinitysoft. Dopo l'installazione, ogni articolo, pagina e prodotto WooCommerce riceve un metabox "Visibilità post". All'interno ci sono otto caselle di controllo: homepage, categorie, tag, archivi per autore e data, ricerca, RSS, REST API e widget.
Seleziona quelle che ti servono e il post scompare dalle aree scelte. Il link diretto continua a funzionare. Nessun codice. Nessuna modifica ai template.
Cos'altro offre il plugin:
- Pro: supporto WooCommerce immediato (nasconde i prodotti dalla vetrina, dalle pagine categoria e dalla ricerca del negozio); nasconde file media e allegati; una colonna "Nascosto" nell'amministrazione mostra esattamente dove ogni elemento è nascosto.
- Contro: la versione gratuita non supporta la modifica in blocco (solo un post alla volta); nessun reindirizzamento delle pagine nascoste a 404 (richiede la versione Pro).
- Prezzo: Gratuito; Pro a partire da $29 all'anno (Modifica rapida, Modifica in blocco, Reindirizzamento 404, Nascondi ovunque).
Installazione in tre passaggi: Plugin → Aggiungi nuovo, cerca "WP Hide Post", installa e attiva. Il metabox di visibilità compare nell'editor di ogni post subito dopo l'attivazione.
🔗 WP Hide Post su WordPress.org
Metodo 3: Pubblicare come pagina
Un espediente che funziona con la maggior parte dei temi. Un tema WordPress standard mostra gli ultimi articoli (post type post) in homepage. Le pagine (post type page) non entrano in questo flusso; vivono separatamente.
Crea una nuova pagina (Pagine → Aggiungi nuova), scrivi il contenuto e pubblica. Non apparirà in homepage. Non apparirà nel feed RSS, negli archivi per categoria o nei risultati di ricerca, a meno che tu non abbia configurato la ricerca per includere le pagine separatamente.
Questa soluzione è per situazioni in cui il contenuto risiede a un URL fisso in un menu o in una landing page e i lettori arrivano tramite un link diretto anziché dal feed del blog. Semplice e senza plugin. Lo svantaggio è che le pagine non partecipano alle tassonomie dei post: non puoi assegnare un tag né includerle in una categoria.
Metodo 4: Escludere una categoria via codice
I metodi precedenti funzionano un post alla volta. Ma se devi nascondere un'intera categoria (ad esempio, "Notizie dal settore" con 40 articoli), impostare manualmente le caselle diventa una tortura. Qui aiuta il filtraggio a livello di query in WordPress.
Per prima cosa, trova l'ID della categoria. Vai su Articoli → Categorie, apri quella che ti serve e guarda la barra degli indirizzi del browser: il parametro tag_ID=55 è l'ID. Prendi nota del numero.
Ora aggiungi il seguente codice al file functions.php del tuo tema attivo (preferibilmente un tema child):
1 function exclude_category_from_home($query) { 2 if ( $query->is_home() && $query->is_main_query() ) { 3 $query->set( 'cat', '-55' ); 4 } 5 return $query; 6 } 7 add_filter( 'pre_get_posts', 'exclude_category_from_home' );
Sostituisci 55 con l'ID della tua categoria. Il segno meno prima del numero significa "escludi".
Cosa succede qui: la funzione verifica che ci troviamo in homepage (is_home) e che questa sia la query principale (is_main_query), così da non influenzare i widget della sidebar e i loop annidati. Poi aggiunge il parametro cat con il segno meno, la sintassi standard di WP_Query per escludere una categoria. WordPress non recupera nemmeno i post della categoria esclusa dal database; non si limita a nasconderli nel template. Veloce, pulito, nessuna query aggiuntiva.
Dopo aver salvato il file, tutti gli articoli della categoria selezionata scompaiono dalla homepage. Per farli tornare, rimuovi questo blocco da functions.php.
Se devi escludere più categorie, elenca gli ID separati da virgole: 'cat' => '-12,-34,-56'.
Metodo 5: Plugin Ultimate Category Excluder
Per chi non vuole toccare codice, un plugin che fa esattamente la stessa cosa tramite pannello di amministrazione.

Ultimate Category Excluder è un plugin gratuito con oltre 50.000 installazioni attive e una valutazione di 4,2 su WordPress.org. Dopo l'attivazione, vai su Impostazioni → Esclusione categorie e seleziona le categorie che vuoi escludere. Quattro colonne: Prima pagina, Archivi, Feed, Ricerca. Minimalista. Questo basta per il 90% delle esigenze.
- Pro: zero codice; esclusione da quattro aree con un solo clic; funziona con le categorie native di WordPress.
- Contro: non funziona con le tassonomie di WooCommerce o con i custom post type; alcuni utenti segnalano un conflitto con Elementor per cui il plugin reimposta il template della pagina su "Elementor Canvas" (si risolve tornando a "Elementor Larghezza intera").
- Prezzo: Gratuito.
Il plugin non viene aggiornato da dicembre 2025, ma è stato testato fino a WordPress 6.9 e resta stabile per lo scenario base di esclusione di una categoria dalla homepage. Se per te gli aggiornamenti regolari sono critici, usa il metodo 4 (le stesse 8 righe di codice senza dipendenze esterne).
🔗 Ultimate Category Excluder su WordPress.org
Un breve video sull'argomento (in inglese, ma tutte le azioni sono mostrate passo dopo passo):
⁉️🤔 Domande frequenti
Posso nascondere un articolo dalla homepage ma mantenerlo nella ricerca?
Sì. Il plugin WP Hide Post ti permette di spuntare «Nascondi dalla prima pagina» lasciando deselezionato «Nascondi dai risultati di ricerca». L'articolo sarà accessibile tramite ricerca e link diretto, ma non apparirà nel feed della homepage. La visibilità nativa di WordPress non può farlo: nasconde il post completamente, inclusi ricerca e accesso diretto. Per un controllo flessibile, usa il plugin.
Cosa succede all'indicizzazione SEO dei post nascosti?
Se un articolo viene nascosto tramite un plugin (WP Hide Post o Ultimate Category Excluder), il link diretto resta funzionante. Google può indicizzarlo; l'esclusione dal feed della homepage non influisce sull'indicizzazione. I post privati di WordPress non vengono indicizzati: il server restituisce un 404 per i visitatori non autorizzati. Questa è la scelta giusta se il contenuto non deve apparire affatto nei risultati di ricerca.
Posso nascondere articoli da più categorie contemporaneamente?
Sì. Nel codice, elenca gli ID separati da virgole con un segno meno:
'cat' => '-12,-34,-56'. In Ultimate Category Excluder, basta spuntare tutte le categorie necessarie nella pagina delle impostazioni. Una limitazione:pre_get_postsconcatesclude le categorie ma non funziona con tassonomie personalizzate. Per quelle, usa il parametrotax_query.
Il plugin WP Hide Post rallenta il sito?
No. Il plugin utilizza una propria tabella del database in cache; il metabox non aggiunge query a
wp_postmeta. Sul front-end l'impatto sulla velocità è trascurabile. Secondo lo sviluppatore (Xfinitysoft), il sovraccarico è inferiore a 5 ms per pagina in una configurazione tipica.
Cosa è meglio per escludere categorie: codice o plugin?
Dipende da quanto ti senti a tuo agio con il PHP. La funzione
pre_get_postsdel metodo 4 sono 8 righe, senza dipendenze esterne né aggiornamenti. Il plugin Ultimate Category Excluder richiede zero righe di codice ma aggiunge un altro plugin alla tua amministrazione. In pratica: se escludi una o due categorie e non prevedi di cambiare spesso le regole, il codice è più semplice e leggero. Se hai molte categorie e le regole cambiano di frequente, il plugin è più comodo.
Quale metodo scegliere per il tuo obiettivo
Una matrice rapida per non dover rileggere l'intero articolo alla prossima visita:
- Un articolo, solo per la redazione → Visibilità privata (metodo 1). Zero plugin, due clic.
- Un articolo, i clienti devono vederlo tramite link → WP Hide Post (metodo 2). Il massimo della flessibilità, funziona con WooCommerce.
- Contenuto non per il blog ma per un menu o una landing page → Pubblica come pagina (metodo 3). Il tema non se ne accorgerà.
- Un'intera categoria, hai dimestichezza con il PHP →
pre_get_postsinfunctions.php(metodo 4). Otto righe, nessun plugin. - Un'intera categoria, non vuoi toccare il codice → Ultimate Category Excluder (metodo 5). Caselle di spunta, e fatto.
Se nascondi e ripristini articoli con regolarità, inizia con WP Hide Post. La versione gratuita è sufficiente per homepage, categorie, ricerca e RSS. La versione Pro diventa utile quando hai circa un centinaio di articoli e hai bisogno di modifiche massive.
Configuralo una volta e dimenticatene. WordPress fa il resto.



