Question

J'essaie d'utiliser la requête de recherche avec un éventail d'arguments pour réduire les résultats de recherche, mais j'échoue horriblement. C'est ce que j'ai jusqu'à présent.

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;          

$query_string = 's=test&category=wordpress'      

$s_array = array(
    'post_type' => 'blog',
    'caller_get_posts' => 1, 
    'paged' => $paged, 
    'meta_query' => array(
        array(
            'key' => 'votes_percent',
            'value' => '50',
            'compare' => '>',
            'type' => 'numeric',
        )
    )
);
$s_query = http_build_query($s_array);
$is_query = '&' . $s_query;
$s_streaming = $query_string . $is_query;  
query_posts($s_streaming);

Quand résonne $ s_streaming, je reçois

s=test&category=wordpress&post_type=blog&caller_get_posts=1&paged=1&meta_query%5B0%5D%5Bkey%5D=votes_percent&meta_query%5B0%5D%5Bvalue%5D=50&meta_query%5B0%5D%5Bcompare%5D=%3E&meta_query%5B0%5D%5Btype%5D=numeric

Si je supprime les clés Meta_Query, cela fonctionne donc, je suppose que c'est là que réside mon problème.

Ça marche bien comme ça

query_posts($s_array); //just using the array to filter

query_posts($query_string); //just using the search query
//$query_string = 's=test&category=wordpress';

J'essaie de construire la chaîne pour interroger, car cela échoue.

query_posts($query_string . $s_array); //using both

Est-ce que quelqu'un peut-il me montrer la bonne direction?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top