Ciao ragazzi,
In questo tutorial vedremo come possiamo filtrare i risultati di un elenco in base a un campo data.
Nel seguente tutorial utilizzeremo i seguenti plugin e modelli premium:
Archiviato personalizzato avanzato (ACF)
Videotutorial
Iscriviti a un canale mi:
Immaginiamo di creare una pagina eventi e abbiamo bisogno che una volta terminato l'evento non appaia nell'elenco del nostro sito web.
Qualcosa come questo:
Come ho detto, vogliamo che una volta trascorso l'evento, non appaia nell'elenco.
Le soluzioni possibili sono tante, quella che mi è venuta in mente è la seguente:
- Crea un campo Data con ACF
- Filtra per quel campo i risultati in FacetWP
Crea un campo Data con ACF
Grazie ad ACF possiamo creare un campo data, nel mio caso ho creato un campo chiamato Data Rimuovi lavoro
Quando compilo un lavoro appare così:
Perché non ho utilizzato lo stesso campo data dell'opera?
Ti starai chiedendo perché non ho utilizzato il campo della data di esecuzione.
Non l'ho fatto per due motivi:
1° Motivo per non utilizzare il campo della data della prestazione
Perché dovrei anche tenere conto del tempo della performance per non togliere il lavoro prematuramente.
2a ragione
Un'opera può avere più date di esecuzione, quindi sarebbe difficile per me prendere in considerazione quale utilizzare.
Per non impazzire ho pensato che fosse meglio usare un nuovo campo per la data per far sparire l'opera.
Una volta che ho il campo pronto, devo aggiungere il filtro in FacetWP
Crea filtro in FacetWP
Per fare ciò andiamo su Impostazioni -> FacetWP e all'interno del modello (Modelli) che stiamo utilizzando andiamo nella scheda Query e aggiungiamo il seguente filtro:
Nel filtro successivo diciamo a FacetWP che se la data di rimozione dell'opera è maggiore della data corrente, il risultato viene filtrato, ovvero non viene visualizzato.
Usiamo NOW in modo che la data del filtro sia dinamica e tenga conto della data del momento in cui viene eseguita la QUERY.
Questo è il modo in cui mi sono inventato per creare un filtro dinamico.
Riesci a pensare a un altro modo per farlo? Condividilo con noi 😉