J'ai deux champs de profil utilisateur "Nom" et "Prénom". J'ai également une liste d'utilisateurs. Je veux exposer "Nom" comme filtre qui peut rechercher à la fois le nom et le prénom. Comment puis-je faire un seul filtre de combinaison de ces deux champs? Puis-je le créer à partir de l'interface utilisateur des vues?
Une façon possible consiste à créer un autre champ de profil "Nom" qui sera masqué dans le formulaire. Lors de la sauvegarde de l'utilisateur, je combinerais les deux valeurs de champ dans le champ "Nom", puis je l'exposerais comme filtre dans les vues. Mais cette solution est codée en dur et elle doit écrire des crochets.
Réponses:
J'ai finalement trouvé une solution à cela . J'ai suivi la deuxième solution principale proposée bien que le blogueur l'ait personnellement utilisée
hook_views_query_alter()
.Cela m'a donné une solution rapide sans codage en dur.
Voici une autre référence utile.
la source
Sur mon installation, D7 avec vues 7.x-3.6, vous pouvez ajouter un filtre qui est "Global: Combiner les filtres de champs" qui fera exactement ce dont vous avez besoin, permettra aux utilisateurs de rechercher sur plusieurs champs avec un seul filtre.
la source
C'est vraiment facile.
Merci.
la source
Fonctionne hors de la boîte
La méthode la plus simple consiste à utiliser le filtre «Termes de recherche», qui est la fonctionnalité principale de Views . Il va chercher dans tous les champs de l'entité et retourner le résultat, aucun module supplémentaire nécessaire!
C'est tout, rien d'autre à faire (vous voudrez peut-être l'exposer cependant)
Il fonctionne très bien aussi.
la source
Vous pouvez utiliser hook_views_pre_execute (& $ view) pour étendre votre condition unique à plusieurs champs que vous souhaitez
la source