Je souhaite recevoir tous mes articles avec plusieurs champs personnalisés (WordPress 3).
Exemple, j'ai 2 couples personnalisés meta_key/meta_value: "order_submenuexpositions/numeric" "display_submenuexpositions/boolean"
J'ai essayé comme ça, mais le résultat n'est pas ordonné par meta_value à "order_submenuexpositions" meta_key:
SELECT * FROM wp_posts
LEFT JOIN wp_postmeta wpostmetaOrder ON ( wp_posts.ID = wpostmetaOrder.post_id AND wpostmetaOrder.meta_key = 'order_submenuexpositions' )
LEFT JOIN wp_postmeta ON wp_posts.ID = wp_postmeta.post_id
LEFT JOIN wp_term_relationships wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id)
LEFT JOIN wp_term_taxonomy wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
WHERE wp_postmeta.meta_key = 'display_submenuexpositions'
AND wp_postmeta.meta_value = 'true'
AND wp_posts.post_status = 'publish'
AND wp_posts.post_type = 'post'
AND wp_term_taxonomy.taxonomy = 'category'
ORDER BY wpostmetaOrder.meta_value ASC,wp_postmeta.meta_value ASC
comment puis-je le faire ?
je vous remercie !
Vous pouvez utiliser meta_query
pour obtenir uniquement les publications avec display_submenuexpositions = true
et les commander par order_submenuexpositions
.
$args = array(
'orderby' => 'meta_value',
'meta_key' => 'order_submenuexpositions',
'meta_query' => array(
array(
'key' => 'display_submenuexpositions',
'value' => 'true',
'compare' => 'LIKE'
)
)
);
$query_posts( $args );