Obtenez les messages plugin et shortcode meta_query?
-
16-10-2019 - |
Question
J'utilise Get plug-in messages à des postes de liste de type poste "projet". Je veux filtrer la liste par deux champs personnalisés: année (ex., 2006) et de l'État (ex Achevé.). J'ai ajouté meta_query
aux args get_post
du plugin et essayé le shortcode:
[get_posts post_type="project" meta_query="array(array('key' => 'state', 'value' =>
'Completed'),array('key' => 'year','value' => '2006'))" suppress_filters="false"]
Ce ne fonctionne pas, même si je peux obtenir à la fois « état » et « année » au travail par leurs propres utilisant meta_key
et meta_value
.
Quelqu'un peut-il me mettre dans la bonne direction?
La solution
En plus du plug-in ne pas être mis à jour, cela ne fonctionnera pas parce que le arg meta_query est évaluée comme une chaîne:
array(3) {
["post_type"] => string(7) "project"
["meta_query"] => string(96) "array(array('key' => 'state', 'value' =>
'Completed'),array('key' => 'year','value' => '2006'))"
["suppress_filters"] => string(5) "false"
}
Je vous suggère de faire un où vous appelez directement get_posts () avec la meta_query que vous voulez.
Vous devez copier le code qui gère la liste de réelle des messages.
Autres conseils
Je ne pense pas que le plug-in été mis à jour pour supporter les nouvelles args de requête, ou plus précisément dans ce cas, le arg meta_query
.
Les listes de pages plugin compatibilité jusqu'à 3.0.5 , et si je me souviens bien, meta_query
a été introduit dans 3.1 , je serais si naturellement conclure le soutien est pas encore disponible ..
Je peux me tromper, juste relier les points ..
Les utilisations du plugin shortcode_atts
pour limiter la liste des arguments acceptés:
http: // plugins.trac.wordpress.org/browser/nurelm-get-posts/tags/0.3/get-posts.php#L29
meta_query
ne figure pas sur cette liste. Je vous suggère de bifurquer le plug-in ou de demander à l'auteur de le mettre à jour pour autoriser les requêtes méta.