meta_query, comment faire une recherche en utilisant à la fois la relation OU le &, ET?
Résolu: Voir réponse ci-dessous.
J'ai un custom post type, LIVRES. Il a plusieurs champs personnalisés, à savoir: TITRE, AUTEUR, GENRE, CLASSEMENT. Comment puis-je réparer mon meta_query code ci-dessous afin que seuls les livres qui ont le mot de recherche dans les champs personnalisés; titre, auteur, genre, AVEC EXACTEMENT la notation spécifié dans mon formulaire de recherche, il est affiché dans les résultats?
J'ai fait une recherche personnalisée; une zone de texte qui va de la recherche à travers le titre, l'auteur et le genre, et une liste déroulante qui va chercher la notation. Le meta_query j'ai fait ci-dessous recherche seulement le titre, l'auteur et le genre. Mais maintenant je suis perplexe dans comment ajouter le code pour la notation.
C'est comment je visuellement imaginé avec meta_query relation:
(titre OU l'auteur OU genre) ET de notation
$args = array(
'relation' => 'OR',
array(
'key' => 'title',
'value' => $searchvalue,
'compare' => 'LIKE'
);
array(
'key' => 'author',
'value' => $searchvalue,
'compare' => 'LIKE'
);
array(
'key' => 'genre',
'value' => $searchvalue,
'compare' => 'LIKE'
);
),
array(
'relation' => 'AND',
array(
'key' => 'rating',
'value' => $ratingvalue,
'compare' => '=',
'type' => 'NUMERIC'
));
Je serais extrêmement reconnaissant de votre aide et de conseils.
- veuillez voir le lien wordpress.stackexchange.com/questions/35683/... codex.wordpress.org/Class_Reference/WP_Meta_Query
- Merci! Donc, si je ne peux pas le faire avec meta_query, est-il une autre façon de comment je peux faire?
- quelques exemple de définir sur une dernière sur ce lien. codex.wordpress.org/Class_Reference/WP_Meta_Query
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé la solution avec un peu d'aide.
Le code ci-dessous fonctionne parfaitement.
Après quelques tâtonnements, j'ai trouver une solution à cette question. Ce qui est logique, je veux dire meta_query ne prend en charge le tableau pour le champ "clé", mais de donner la matrice dans la "clé", j'ai la solution parfaite. J'ai peut-être sembler fou, mais il fonctionne comme un charme.
Vous obtenez seulement un avertissement pour "trim()" comme nous le passage d'un tableau au lieu d'une chaîne. Supprimer cet avertissement ou s'il vous Plaît ajouter quelque chose si vous trouvez une meilleure solution.