Interrogare i Posts o ottenere Posts tramite campi personalizzati, è possibile?
Se dovessi prendere una query post standard.
<?php query_posts('post_type=payment'); while (have_posts()) : the_post();?>
Questa volta vorrei interrogare il post attraverso 2 campi personalizzati che potrebbe contenere.
<?php query_posts('post_type=payment'.get_post_meta($post->ID,'bookingref', true).get_post_meta($post->ID,'customerref', true) ); while (have_posts()) : the_post(); ?>
Questo non funziona. È possibile fare qualcosa del genere e come si fa?
Qualche idea?
Meraviglioso

Per interrogare i post in base ai campi personalizzati puoi utilizzare il parametro 'meta_query'
<?php
$args = array(
'post_type' => 'payment',
'meta_query' => array(
array(
'key' => 'bookingref', // chiave del campo personalizzato
'value' => 'il_valore_che_desideri', // valore da cercare
'compare' => 'LIKE' // tipo di comparazione
),
array(
'key' => 'customerref', // chiave del campo personalizzato
'value' => 'il_valore_che_desideri', // valore da cercare
'compare' => 'LIKE' // tipo di comparazione
)
)
);
query_posts($args); while (have_posts()) : the_post();
?>
Non puoi usare get_post_meta all'interno della query perché restituisce il valore e non la chiave, inoltre richiede un ID del post per ottenere quel valore e prima della query $post->id non è nello scope.

sì, questo è meglio della mia risposta (cancellata) - meta_query è il modo giusto per interrogare più chiavi personalizzate

Meraviglioso, ben fatto. Manca però una parentesi. Ti serve .. )); query_posts($args) ..
