Filtre WP_Query pour les messages ayant une certaine valeur de méta-
-
16-10-2019 - |
Question
Comment filtrer WP_Query pour les postes ayant une certaine méta-valeur, sans l'aide d'une commande Sélectionner une requête?
J'ai un posttype personnalisé avec méta-clé: "ouverte", et les options méta-valeur:. "Oui" ou "non"
Je voudrais montrer les messages uniquement avec meta_value = oui, pour meta_key = "ouverte".
function filter_where($where = '') {
$open = "yes";
//$where .= " AND post_date > '" . date('Y-m-d', strtotime('-2 days')) . "'";
return $where;
}
add_filter('posts_where', 'filter_where');
La solution
Je ne suis pas sûr de votre libellé si vous ne l'aviez pas essayé avec l'argument de la requête ou il n'a pas marché?
$the_query = new WP_Query(array( 'meta_key' => 'open', 'meta_value' => 'yes' ));
personnalisés Paramètres Champ dans le Codex.
Autres conseils
$querystr = "
SELECT wposts.*
FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta
WHERE wposts.ID = wpostmeta.post_id
AND wpostmeta.meta_key = 'custom-key'
AND wposts.post_type = 'page'
ORDER BY wpostmeta.meta_value DESC
";
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange