Vous pouvez remplacer theme_search_results () ou theme_search_result ().
La première est la fonction de thème appelée pour la page de résultats de la recherche, tandis que la seconde est la fonction de thème appelée pour afficher un seul résultat. Les deux fonctions de thème utilisent un fichier modèle ( search-results.tpl.php dans le premier cas, search-result.tpl.php dans le second cas).
search-result.tpl.php serait utilisé $info_split['type']
dans Drupal 6, qui contient le type de nœud. Dans la dernière version de Drupal 7, il $info_split['type']
n'est plus transmis, mais search-result.tpl.php est toujours obtenu $result['node']
, dans le cas où la recherche est faite pour les nœuds; $result['node']->type
est alors le type de contenu du noeud.
Pour noter que Drupal 7, et supérieur, permet aux modules d'implémenter hook_search_page () , mais c'est un crochet utilisé par un module qui s'intègre au module de recherche, pas à partir d'un module qui veut changer la page de résultat pour les résultats renvoyés par un autre module.
De plus, sous Drupal 7, chaque fonction de thème utilise une fonction de prétraitement, qui dans ce cas serait hook_preprocess_search_results () et hook_preprocess_search_result () . Ils sont utiles dans le cas où vous devez simplement éditer la valeur de ce qui est passé dans le fichier de modèle.
Dans Drupal 7, vous utilisez ...
... pour bricoler les informations affichées dans les résultats.
Et vous utilisez ...
... pour personnaliser le balisage des résultats.
Exemple
Voici un exemple d'utilisation de l'aperçu du type de contenu en tant que résultat de recherche. Le prochain extrait va dans le template.php du thème
Cet extrait est le fichier search-result.tpl.php:
la source
J'ai récemment passé beaucoup de temps à travailler avec les résultats de recherche sur un site Web d'architecture Drupal 7 et à utiliser le module Display Suite .
Le module Display Suite offre une méthode merveilleuse pour prendre le contrôle des résultats de recherche: il vous permettra d’utiliser facilement vos teasers dans les résultats de recherche. Il s’agit d’un didacticiel du responsable du module qui l’utilise pour les résultats de recherche.
Comme toujours avec Drupal, il existe différentes façons de faire la même chose. Cette méthode m'a plu car elle m'a permis de ventiler les résultats par type de contenu.
la source