Visita <a href="http://www.liquida.it/" title="Notizie e opinioni dai blog italiani su Liquida">Liquida</a> e <a href="I widget di Liquida per il tuo blog">Widget</a>

giu19
Categoria: Personalizzare WordPress | Autore: Ghido

Escludere post dal Loop

Qualche mese fa avevo scritto una pillola per WordPress che è stata piuttosto apprezzata: Come creare una sezione di post in Evidenza, nella quale spiegavo come creare una sezione a parte, con i post che si vogliono mettere in evidenza.

Ieri, Teodoro Di Stasi mi ha domandato:

Come potrei fare in modo che gli articoli “in evidenza” non vengano mostrati nella Home?

“De facto” quando scriviamo un articolo, WP in automatico lo posta nella home page.
Ecco, io avrei bisogno che gli articoli che scrivo per la categoria “in evidenza” siano disponibili SOLO tramite il metodo 1 magari.

Pur avendogli risposto nei commenti, ho deciso di condividere con tutti la soluzione alla sua richiesta, sicuro che potrà tornare utile anche a voi.

Oggi vedremo allora come rimuovere dal Loop tutti i post appartenenti ad una certa categoria.

In realtà, nell’articolo spiegavo due modi: il primo funzionava contrassegnando gli articoli in questione con un campo personalizzato, ed il secondo era basato sulla creazione di una nuova categoria (vi consiglio comunque di rileggervi il post).

1. Escludere i post di una categoria

Se utilizziamo il secondo metodo, dovremo allora escludere dalla home i post che appartengono alla categoria “Evidenza”.

Per fare ciò, utilizziamo la funzione query_posts: sarà sufficiente inserire il seguente codice prima del Loop:

<?php query_posts($query_string . '&cat=-40'); ?>

dove, ovviamente, 40 sarà il numero della categoria di cui vogliamo escludere i post.

2. Escludere i post con un certo campo personalizzato

Il primo metodo si basava invece sui campi personalizzati. In questo caso, dobbiamo escludere dal Loop tutti i post associati ad un determinato meta-key.

Sempre come prima, inseriamo questo codice prima del Loop:

<?php query_posts($query_string . '&meta_key=evidenza&meta_compare=!='); ?>

Così gli diciamo di fare un confronto e di mostrare solamente quei post che hanno un meta-key diverso da “evidenza”, che era la parola chiave utilizzata nel campo personalizzato, per identificare i post da mettere in evidenza.

Tutto qua. Facile, no?

Ovviamente potete usare questo trucchetto in qualsiasi caso in cui dobbiate escludere una categoria dal Loop. Vi rimando alla documentazione per tutti gli altri parametri.

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Leggi anche:

9 Commenti

  1. Query_post è davvero il coltellino svizzero di ogni buon tema personalizzato :D

    • Sì, davvero,ci puoi fare proprio di tutto! :)

  2. Lorenzo De Santis

    Grazie Dani. Misà che ti avevo chiesto una volta come farlo.. Comunque sai un articolo veramente utile utile, inserire widget differenti per ogni categoria.. Sai come aumenterebbe il tasso di conversione di pubblicità molto più targetizzata.. Ce diciamoci la verità, a me e a molti altri, il 50% del traffico arriva da un target che non ce ne infischia molto, nonostante ci si sforza a scrivere su un determinato target rimane la long tail che sfasa..

    Allora, studi come si fà? Attendo l’articolo, come tanti altri blogger sicuramente :-)

    Saluti!

    Lorenzo

  3. ottimo ed indolore!

  4. Io ho scaricato un plugin e ho risolto così ;-)

    • no dai un plugin per questa cosa è eccessivo ;)

      • infatti… un pò eccessivo, meglio non riempire di plugin wordpress

  5. Dove va inserito

    Nei file tema o in file di wp?

    Grazie delle risposte.

  6. Grazie ho risolto. Grazie mille davvero, ottimi consigli ^^

Lascia un commento

Inserisci le tue informazioni personali, o loggati con il tuo account Facebook.




Chiudi
Invia e-mail