WordPress Query based on Custom Field and Category
Il bello di WordPress e’ che puoi farci di tutto e se il loop di default che ti propone non ti sta bene e vuoi loopare su query personalizzate da te, puoi.
Per esempio potreste volere che la query principale riporti solo determinati post basati su specifiche categorie, tags o quello che vi pare, e allora dovrete crearvi voi la query, ma anche per questo c’e’ qualcuno che ci ha gia’ pensato togliendovi diverso lavoro.
Con la seguente query, per esempio, riuscirete a estrapolare dal database di WordPress tutti i post contenuti nelle categorie 1,2 e 3, che hanno la meta_key “paragraf”, e ordinate per meta_value ascendente:
querystr = "
SELECT $wpdb->posts.*
FROM $wpdb->posts
LEFT JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id)
LEFT JOIN $wpdb->post2cat ON ($wpdb->posts.ID = $wpdb->post2cat.post_id)
WHERE $wpdb->postmeta.meta_key = 'paragraf'
AND $wpdb->posts.post_status = 'publish'
AND $wpdb->posts.post_type = 'post'
AND $wpdb->post2cat.category_id IN (1,2,3)
ORDER BY $wpdb->postmeta.meta_value ASC
";
Ora bastera’ seguire il resto del tutorial per capire come visualizzare i risultati della vostra custom query.
If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.
20:09 on March 17th, 2011
gud article
10:49 on November 18th, 2010
Ciao,
Come faccio a inserire nella query che voglio solo i post della categoria in essere cioè selezionata dell’ elenco delle categorie? Ho provato con:
$IDcategoria = $wp_query->get_queried_object_ID();
E nella query ho inserito:
AND $wpdb->post2cat.category_id IN ($IDcategoria)
Ma non funziona na cicca! Non trova nessun post :(
http://www.superkarma.it
19:44 on October 17th, 2008
do you know how to query for 2 custom fields? thankss!! :)
11:29 on February 24th, 2008
My italian is a bit rusty but i get the gist of it. Will try it.