Un moteur de recherche supplémentaire pour votre site (Google, Yahoo...)

dimanche 9 avril 2006
par  _Eric_
popularité : 3%

A PROPOS

- Compatiblité

  • version de SPIP : 1.8.x
  • version de Sarka-SPIP : 1.1.2

- Fichiers ou dossiers à créer

  • /inclusions/bloc-gauche-recherche-ext.php3
  • /inclusions/bloc-gauche-recherche-google.html
  • /inclusions/bloc-gauche-recherche-yahoo.html
  • /inclusions/bloc-gauche-recherche-voila.html
  • /inclusions/bloc-gauche-recherche-exalead.html
  • /inclusions/bloc-gauche-recherche-msn.html
  • /puces/logo-google.gif
  • /puces/logo-yahoo.gif,
  • /puces/logo-voila.gif
  • /puces/logo-exalead.gif
  • /puces/logo-msn.gif

- Fichiers ou dossiers à modifier

  • /inclusions/bloc-gauche.html
  • local_fr.html
  • local_en.html
  • local_es.html

AVERTISSEMENT

Cet article est une extension de l’article de Mslp Ajouter un lien Google à votre site. Il propose, d’une part, une autre intégration dans la partie gauche du squelette et une extension dans la mise en oeuvre avec la possibilité de remplacer le moteur Google par Yahoo, Voila, Exalead ou MSN (voire d’autres dans le futur).

Si cette proposition est retenue, elle fera partie d’une prochaine version du squelette.

INTEGRATION DANS LE SQUELETTE

Le principe est d’intégrer le formulaire de recherche supplémentaire dans le bloc de recherche déjà affiché dans la partie gauche du squelette. Seul un moteur supplémentaire est proposé en complément du formulaire classique. Les images suivantes illustrent l’intégration proposée :

PNG - 2.4 ko
Bloc recherche simple
PNG - 7 ko
Bloc recherche avec Google
PNG - 7.5 ko
Bloc recherche avec Yahoo
PNG - 7.7 ko
Bloc recherche avec Voila
PNG - 7.6 ko
Bloc recherche avec Exalead
PNG - 6.6 ko
Bloc recherche avec MSN Search

MISE EN OEUVRE

La mise en oeuvre retenue suit 3 principes de base :

  • modifier un minimum le squelette de base
  • permettre de choisir simplement le moteur supplémentaire
  • préparer une future version paramétrable via l’espace privé de SPIP.

À cet égard, seul le fichier bloc-gauche.html [1] est modifié de la manière suivante :


<!- formulaires de recherche ->
<div id="nav_recherche" class="nav2">
<!- Champ de recherche standard du site (moteur SPIP) ->
<div class="texte">
<form action="#URL_SITE_SPIP/recherche.php3" method="get">
<input type="text" class="saisie-texte" name="recherche" maxlength="50" value="<:requete:>" onFocus="value=' '">
<input type="submit" class="spip_bouton" value="<:rechercher:>">
</form>
</div>

<!- Champ de recherche moteur externe -> <INCLURE(inclusions/bloc-gauche-recherche-ext.php3)>
</div>

En outre, les fichiers suivants sont ajoutés :

  • dans le répertoire /inclusions :
    • bloc-gauche-recherche-ext.php3
    • bloc-gauche-recherche-google.html
    • bloc-gauche-recherche-yahoo.html
    • bloc-gauche-recherche-voila.html
    • bloc-gauche-recherche-exalead.html
    • bloc-gauche-recherche-msn.html
  • dans le répertoire /puces, les logos :
    • logo-google.gif,
    • logo-yahoo.gif,
    • logo-voila.gif,
    • logo-exalead.gif,
    • logo-msn.gif.

Ensuite, pour choisir le moteur supplémentaire, il suffit, dans le fichier bloc-gauche-recherche-ext.php3 [2] de choisir la variable $fond adaptée en commentant/décommentant la bonne ligne comme suit (exemple pour Google) :

$fond = "inclusions/bloc-gauche-recherche-google";
// $fond = "inclusions/bloc-gauche-recherche-yahoo";
// $fond = "inclusions/bloc-gauche-recherche-voila";
// $fond = "inclusions/bloc-gauche-recherche-exalead";
// $fond = "inclusions/bloc-gauche-recherche-msn";
$delais = 0;
include("inc-public.php3");

Cette contribution, fournie dans le fichier compressé ci-dessous, est basée sur la version 1.1.2c16. Pour son adaptation dans une version antérieure, suivre les explications précédentes et intégrer les modifications manuellement.

Zip - 26.2 ko
Contribution pour l’ajout d’un moteur de recherche supplémentaire

CONCLUSION

La liste des moteurs de recherche supportés est pour l’instant limitée. Toute contribution pour l’enrichir sera la bienvenue.

En outre, une version avec une liste de choix de moteurs sera proposée dans un avenir... pas trop lointain.


[1La modification des fichiers local_xx.php3 n’est pas décrite dans cet article car elle ne concerne que la traduction des boutons radio

[2Lors du passage au squelette paramétrable il suffira de modifier le fichier bloc-gauche-recherche-ext.php3 en conditionnant le choix de $fond à la valeur d’une variable


Documents joints

Contribution pour l'ajout d'un moteur de (...)
Contribution pour l'ajout d'un moteur de (...)

Commentaires  forum ferme

Logo de grenouille
Problème sur le moteur de recherche
samedi 16 décembre 2006 à 21h55 - par  grenouille

Bonjour,

J’ai dû faire une bêtise à un moment ou à un autre, mais je ne vois pas où, car cela fonctionnait bien avant.
En effet, lorsque je lance une recherche sur mon site, l’erreur suivante s’affiche :

# Erreur(s) dans le squelette
* Erreur : filtre « typo_couleur » non défini, _articles-recherche

Si quelqu’un voit ce que je peux faire, ce serait sympa.

Pour voir les dégâts sur le site en question

Merci d’avance

dimanche 17 décembre 2006 à 22h35 - par  grenouille

Merci de la réponse : j’ai en effet résolu le problème. J’ai dû m’emmêler les pinceaux avec les différentes versions de mes-fonctions.php. En réinstallant un fichier original (avec les mises à jour, je ne sais plus quelle version j’utilise...), cela fonctionne à nouveau.

Je vous l’ai déjà dit et je le répète : bravo aux sarkadmin pour le squelette et la réactivité.

Logo de grenouille
samedi 16 décembre 2006 à 23h59 - par  _Eric_

Salut Grenouille,

Ce type d’erreur vient de l’absence du filtre typo_couleur dans mes_fonctions.php.

Par exemple, si tu viens de passer en Sarka 1.9.1, le fichier mes_fonctions est passé de la racine dans le répertoire /squelettes. Donc tu dois dans ce cas éliminer l’ancien.

Si tu as fait une autre manip que celle la ou si tu es dans une autre version de Sarka, décrit la nous ce sera plus simple pour t’aider.

A+

samedi 16 décembre 2006 à 23h30 - par  grenouille

J’ai oublié de dire que j’ai la même erreur avec "auteur".

j’ai bien vérifié que "mes_fonctions.php" est à la racine du site comme il est indiqué ds un message de ce site, mais rien n’y fait.

Merci de votre aide

Navigation