WordPress Little Trick – Rimuovere un Post dal Feed RSS nella Maniera Migliore

scritto da Francesco Gavello [+] il 13 aprile 2009 | 9 Commenti in: WordPress

wordpress-red

Ci sono moltissimi motivi per i quali vorresti poter estrarre uno o più post dal flusso del tuo feed RSS.

In WordPress, anche grazie alla notevole disponibilità di plugin, non è d’altronde così difficile trovare qualcosa di adatto allo scopo.

Tuttavia, spesso soluzioni di questo tipo sono semplicemente esagerate rispetto alle reali necessità. Se tutto ciò di cui hai bisogno è poter pubblicare un post senza che questo vada a comparire nel normale flusso RSS, forse installare pesanti plugin (che tra tutte le altre opzioni fanno forse anche ciò di cui hai bisogno) non è sempre la scelta migliore.

Senza contare che la mantenibilità di un buon layout si vede anche nei piccoli dettagli. Inscatolare le funzionalità del tema che possono non dipendere direttamente da decine di plugin esterni è sempre cosa buona.

E così, tra una colomba pasquale e un picnic, oggi ti voglio proporre un metodo veramente rapido per poter decidere di escludere una o più categorie di post dal tuo feed RSS.

Andremo a sfruttare le potenzialità del file functions.php.

Functions.php, se ricordi, non è un file indispensabile per la costruzione di un layout. Tuttavia la sua presenza diventa una vera manna dal cielo quando si vogliono spremere fino in fondo le potenzialità del nostro CMS preferito. Ne abbiamo già visto un utilizzo qualche tempo fa, parlando proprio di come assegnare un layout personalizzato ai commenti nidificati.

Creiamo dunque il nostro file functions.php nella cartella root del tema in uso.

Poi, semplicemente incolliamo al suo interno la seguente funzione, sostituendo a ID_CATEGORIA l’ID numerico assegnato da WordPress alla categoria del post che vogliamo escludere.

<?php

function myFilter($query) {
    if ($query->is_feed) {
        $query->set('cat','-ID_CATEGORIA');
    }
return $query;
}

add_filter('pre_get_posts','myFilter');

?>

Voilà.
E’ tutto qui, davvero.

Ora, per pubblicare un post senza vederlo comparire nel tuo feed RSS non dovrai fare altro che assegnargli la categoria indicata nello snippet poco sopra.

Più facile di così ;)

foto: Titanas

Trovato questo articolo interessante?

Condividilo sulla tua rete di contatti Twitter, sulla tua bacheca su Facebook o semplicemente premi "+1" per suggerire questo risultato nelle ricerche in Google. Diffondere contenuti che trovi rilevanti aiuta questo blog a crescere. Grazie!

9 Commenti

Update 12/02/2012: Il Regolamento Commenti è cambiato! Leggi ciò che serve sapere!

  1. Ottantotto ha detto:

    Ancora una volta un articolo che dimostra la tua competenza e capacità in materia! Bravo Francesco, ottimo consiglio! Ti ho mandato una mail… per adesso non ti vedo su skype, appena puoi rispondimi!!!

    Rispondi
  2. Mauro Accornero ha detto:

    Un buon sistema, molto semplice e funzionale, utilizzare le funzioni personalizzate nei template WP aiuta a gestire l’output standard che oltre ad evitare l’ennesimo plugin è una soluzione molto più pulita ed elegante.

    Rispondi
  3. Francesco Gavello ha detto:

    Grazie ragazzi :)

    @Mauro: stupendo layout; spero di leggere molti tuoi articoli nei prossimi tempi ;)

    Rispondi
  4. elisa ha detto:

    Prezioso post. Non so ancora perché, ma sento che prima o poi mi servirà. Perciò me lo conservo in dispensa! Grazie :)

    Rispondi
  5. [...] 1) WordPress Little Trick – Rimuovere un Post dal Feed RSS nella Maniera Migliore [...]

    Rispondi
  6. devilio ha detto:

    scusami Francesco,
    questa soluzione ha degli svantaggi rispetto a quella proposta da te?

    direttamente in feedburner
    http://example.com/feed?cat=-3&cat=-4&cat=-5

    Rispondi
  7. Francesco Gavello ha detto:

    Nessuno svantaggio particolare; con l’utilizzo del file functions.php eviti di ricorrere a impostazioni su servizi di terze parti e controlli tutto “in casa” :)

    Appendere le categorie da filtrare al fondo degli URL indicati a FeedBurner torna invece molto utile nel caso si propongano diversi feed filtrati per diverse categorie (una scelta imho controproducente, ma percorribile in determinati casi)

    Rispondi
  8. devilio ha detto:

    ok grazie :-)

    lo chiedevo perchè utilizzo un tema premium e il file functions è pieno zeppo di cose e se aggiungo quel codice, produce qualche errore, quin di cercavo altre possibili soluzioni.

    Rispondi

Lascia un commento

Anteprima commentatore

Personalizza il tuo avatar!
Vai su gravatar.com e carica quello che preferisci!

I commenti sono modificabili entro 5 minuti dal loro inserimento.
Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Solo i commenti firmati con un nome saranno accettati. Leggi il Regolamento Commenti!