web-dev-qa-db-fra.com

comment puis-je utiliser un champ personnalisé dans le post de requête

Je veux obtenir tous les articles en vedette en utilisant requête post. meta_key est présenté avec un plugin de champ personnalisé.

J'ai essayé ci-dessous, mais ça a échoué

$featured_item = new WP_Query('posts_per_page=-1&cat=3&meta_key=>Featured List&meta_value=>Yes');

ma version de wp est 3.1.3

EDIT:

$arg2 = array(
    'posts_per_page'=>'5',
    'cat'=>'3',
    'orderby'=>'Rand',
    'meta_query'=> array(
        'key'=>'Featured List',
        'value'=>'Yes',
        'compare'=>'LIKE'
    )
);

$featured_random_item = new WP_Query($arg2);

Cette requête a également échoué.

Comment puis-je faire ceci

Merci d'avance !

1
Gowri

Votre meta_query doit être un tableau imbriqué , comme ceci;

$args = array(
    'posts_per_page' => '5',
    'cat' => '3',
    'orderby' => 'Rand',
    'meta_query' => array(

        array(
            'key' => 'Featured List',
            'value' => 'Yes'        
        )
    )
);

Et j’ai l’impression que vous n’avez pas réellement besoin d’une correspondance LIKE - elle permet une comparaison approximative et n’est pas aussi efficace qu’une correspondance exacte.

2
TheDeadMedic

La documentation pour WP_Query est ici: http://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters

Vous devriez utiliser la syntaxe de tableau, car cela rendra les choses plus claires pour vous.

1
anu