Query su Tassonomie Personalizzate Multiple

24 mag 2011, 16:44:17
Visualizzazioni: 452
Voti: 0

Ho registrato 2 tassonomie: festival_year e art_genre. Vorrei permettere agli utenti di cercare per anno e genere specifici, ma non sono sicuro del modo migliore per farlo. Ho provato vari plugin ma nessuno ha funzionato. Sono riuscito a creare file separati, come taxonomy-art_genre-consumable-crafts.php con il seguente codice:

<?php
$festivalquery = wp_parse_args($query_string);
$festivalquery['tax_query'] = array(
    'showposts' => 10 ,
    'orderby' => 'title',
    'order' => 'ASC',
    'paged' => $paged,
    'relation' => 'AND',
    array(
        'taxonomy' => 'festival_year',
        'terms' => array('2010-artists'),
        'field' => 'slug',
    ),
    array(
        'taxonomy' => 'art_genre',
        'terms' => array('consumable-crafts'),
        'field' => 'slug',
    ),
);
query_posts($festivalquery);
?>

che mi restituisce la query che desidero. Tuttavia ci sono 11 generi (e ovviamente ci saranno più anni).

Invece di creare template di pagina separati, qual è il modo migliore per ottenere questo risultato?

Sito di test: http://www.beta.cornhillartsfestival.com/artists/

Grazie mille!

0
Tutte le risposte alla domanda 1
3

Prima di tutto, per assicurarmi di capire la premessa generale, vuoi sapere come evitare di creare un template separato per ogni genere e anno?

Quindi, per esempio, clicco su un link per visualizzare il genere "consumable crafts". Si caricano tutti i lavori artigianali consumabili.

Ora, se vuoi creare semplicemente un template "genere", ad esempio "taxonomy-art_genre.php", allora quello che devi fare è creare quel file, includere la tua query e sostituire:

'terms' => array('consumable-crafts'),

Con:

'terms' => get_query_var( 'term' )

Questo caricherà il termine, come slug, in base al termine che stanno visualizzando. Quindi, andando su http://www.beta.cornhillartsfestival.com/art_genre/consumable-crafts/ verrebbe caricato taxonomy-art_genre.php e il "termine" che get_query_var restituirebbe è "consumable-crafts".

Ha senso?

Ora, vuoi avere una pagina che mostri un particolare genere in un particolare anno? Questa è una questione un po' diversa, ma può essere risolta.

Fammi sapere se questa è la risposta che cercavi.

24 mag 2011 18:15:47
Commenti

Grazie per la risposta! Sì, vorrei poter mostrare un particolare genere in un anno specifico. Nella pagina del 2010 vorrei anche avere una tag cloud o un elenco dei generi artistici e quando si clicca su un tag si viene portati a 2010 - artisti del vetro, ecc. È possibile? Grazie!

ellaj ellaj
25 mag 2011 14:24:34

@ellaj - Per consigliarti sulla prima parte, ho bisogno di capire meglio come si arriverebbe a una pagina che mostra un particolare genere in un anno specifico. Potresti darmi maggiori dettagli?

Jonathan Wold Jonathan Wold
26 mag 2011 18:05:32

@ellaj - Ok, se ho capito bene, vuoi sostanzialmente avere una pagina degli artisti del 2010. Nella sidebar, potresti avere un'intestazione che dice "Altri generi nel 2010", e li elencherebbe sotto - cliccando su uno di questi verresti portato a una pagina che mostra, ad esempio, "Artisti del vetro nel 2010". Ora, in quella pagina, vorresti anche mostrare un link a "Artisti del vetro nel 2011", ecc.? Fammi sapere se ho capito correttamente.

Jonathan Wold Jonathan Wold
26 mag 2011 18:10:06