Interogare articole sau obținere articole după câmpuri personalizate în WordPress
Dacă aș folosi o interogare standard pentru articole.
<?php query_posts('post_type=payment'); while (have_posts()) : the_post();?>
De data aceasta aș dori să interoghez articolele după 2 câmpuri personalizate pe care le poate conține.
<?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(); ?>
Asta nu funcționează. Este posibil așa ceva și cum se face?
Aveți idei?
Minunat

Pentru a interoga postări după câmpuri personalizate, poți utiliza parametrul 'meta_query'
<?php
$args = array(
'post_type' => 'payment',
'meta_query' => array(
array(
'key' => 'bookingref', // cheia câmpului personalizat
'value' => 'valoarea_dorită',
'compare' => 'LIKE' // comparație de tip LIKE
),
array(
'key' => 'customerref', // cheia câmpului personalizat
'value' => 'valoarea_dorită',
'compare' => 'LIKE' // comparație de tip LIKE
)
)
);
query_posts($args); while (have_posts()) : the_post();
?>
Nu poți utiliza get_post_meta în interiorul interogării deoarece aceasta returnează valoarea și nu cheia, iar în plus acceptă un ID de postare pentru a obține acea valoare, iar înainte de interogare $post->id nu este disponibil în scopul curent.

da, asta este mai bun decât răspunsul meu (șters) - meta_query este soluția potrivită pentru interogarea mai multor chei personalizate

Minunat, bine lucrat. Îți lipsește totuși o paranteză. Ai nevoie de .. )); query_posts($args) ..
