En utilisant la v2 de l'API REST, je souhaite interroger certains messages par plusieurs méta-clés. Avec la v1, j'ai pu formater l'URL comme &filter[meta_value][month]=12&[meta_value][year]=2015
cela a fonctionné (après avoir exposé les méta-valeurs à l'API).
Maintenant, avec v2, je ne peux que faire fonctionner cela en utilisant les méthodes répertoriées sur ce fil GitHub: https://github.com/WP-API/WP-API/issues/1599#issuecomment-161166805
Fondamentalement, a ajouté les champs méta en utilisant le rest_query_vars
filtre comme:
add_filter( 'rest_query_vars', 'flux_allow_meta_query' );
function flux_allow_meta_query( $valid_vars )
{
$valid_vars = array_merge( $valid_vars, array( 'meta_key', 'meta_value', 'meta_compare' ) );
return $valid_vars;
}
Avec cela, je peux filtrer par une méta-clé en utilisant une URL comme wp-json/wp/v2/posts?filter[meta_key]=test&filter[meta_value]=on
.
Cependant, il semble que la seule façon de filtrer sur plusieurs métadonnées est d'écrire un filtre personnalisé. Quelqu'un pourrait-il m'orienter dans la bonne direction?
Je sais que cette question a été résolue, mais ce plugin est sorti et a résolu mon problème https://wordpress.org/plugins/wp-rest-filter/
la source