Le OpenSearch module expose les résultats de recherche au format RSS, pas besoin de le coder vous-même.
Si vous voulez un formulaire spécialisé, vous pouvez simplement rediriger vers le résultat OpenSearch après avoir traité votre formulaire.
Addendum: Si vous voulez vraiment ne faire vos propres, vous pouvez utiliser search_data
comme ceci:
<?php
$data = search_data('your searchterms here');
Cette recherche noeuds (comme second paramètre par défaut pour search_data
), mais peut également être utilisé pour rechercher des utilisateurs et d'autres choses qui ont implémenté hook_search.
En outre, search_data
, en ne détenant pas le nom, renvoie réellement les résultats de recherche formatés. Si vous voulez avoir les résultats bruts de la recherche, vous pouvez directementou autres hook_search
do_search
. Exemples:
<?php
$results = module_invoke('node', 'search', 'your searchterms here');
$data = do_search($query, 'node');
La différence étant que l'invocation du crochet vous donne beaucoup plus de données associées à un noeud (car il passe par le code de recherche spécifique nœud, effectue en plus du do_search
générique (hook_search
de node.module mise en œuvre appelle do_search pour que le travail soit fait)) et une recherche peut-être plus précise, puisque la recherche de nœud respecte les poids que vous avez pu définir dans les paramètres de recherche. Le compromis est une requête de recherche plus lente.
Utilisez-vous D5 ou D6? –
c'est drupal 5 –