Moteur de recherche interne

Fermé
k9999 - 26 mars 2012 à 10:46
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 27 mars 2012 à 17:52
Bonjour,

j'ai créé un blog sur un template wordpress
par contre j'aimerai y installer un moteur de recherche interne
(pas de search google), je voudrais que la recherche se fasse uniquement sur des données concernant mon blog et que le résultat m'envoie sur des pages où se situe le mot recherché.

De plus n'étant pas développeur, y aurait-il des exemple de moteur de recherche interne
déja créer...

Merci de me répondre.
A voir également:

3 réponses

AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
26 mars 2012 à 10:49
Bonjour,
Pourquoi pas de search Google ? Ca répond exactement à ce que tu veux...
0
Bonjour,

la raison pour laquelle je ne veux pas de google search
est que je voudrais avoir des réponses sur des mots utilisés sur mon blog,
que la recherche ne sorte pas du cadre de celui ci.

ex: recherche avec le mot : trance (blog sur music electro)

je voudrais que le moteur m'affiche sur quelles pages de mon blog ce mot apparait...

voila pourquoi je refuse google search.

comment faire ?
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
26 mars 2012 à 11:40
Google search fait une recherche personnalisée, qui permet de ne faire de recherche que sur son site, et pas ailleurs.
=> https://programmablesearchengine.google.com/about/
0
ce que je veux dire c'est faire une recherche sur mon blog " Elektroshok "
et obtenir des résultats non pas google, pas mais avoir les pages de mon blog affichant le mot recherché...
ex : recherche trance = résultat le mot apparait sur une page agenda, ou description d'un dj, ou autre article sur mon blog...

je ne souhaite pas avoir une page google sur mon journal...

et ton lien en est la preuve.
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
26 mars 2012 à 12:37
Je pense alors que tu veux quelque chose de trop précis et de personnalisable pour un moteur de recherche déjà créé. Je pense que tu vas devoir le faire toi-même, mais ça, même pour les développeurs, ça peut être complexe.
0
j'ai trouvé un code de moteur de recherche,
je l'ai copié et je bloque sur un point, lorsque je note mon codage ainsi :
<form method="get" action="recherches.html ou php"

cela me donne ceci :
Not Found
The requested document was not found on this server.

et lorsque je refais mon codage comme cela :
<form method="get" action=""

cela m'affiche aucune page et pourtant le chemin url affiche bien le mot recherché

que faire ?

quelqu' un pour m'aider ?!!
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
27 mars 2012 à 10:49
Cette ligne :
<form method="get" action="recherches.html ou php" 

veut dire que c'est une formulaire que tu vas envoyer par la méthode get (c'est-à-dire que tu devras récupérer tes variables comme ceci : $_GET['variable'] et qu'une fois le bouton validé, tu seras redirigé vers la page "recherches.html ou php"

Il faut donc que tu aies une page qui s'appelle recherches.html ou recherches.php (tu choisis ton extension et tu changes ton action selon)
0
voici le code que j'ai copié
je comprends ton raisonnement, mais
à la pratique je m'embrouille un peu, car moi pas être gros developpeur

peux tu m'aider ?

le code est ceci :

<form method="get" action="recherches.html" target="_top">
<input type="hidden" name="cx" value="partner-pub-3514208916940269:gnxlak6opid" />
<input type="hidden" name="cof" value="FORID:11" />
<input type="hidden" name="ie" value="UTF-8" />
<label for="q" class="precherche">Rechercher</label>
<input id="q" type="text" name="q" size="20" title="Recherche dans mon site" accesskey="4" />
<input type="submit" class="soumettre" name="sa" value="Ok" />
</form>
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
27 mars 2012 à 11:19
En gros, tu vas envoyer dans la page recherches.html (action) les value de tes input.
Il s'agit d'un formulaire classique, mais qui ne fait rien de particulier. Toute la magie s'opère dans cette page recherches.html. Si tu ne l'as pas, tu n'as pas ta recherche.

Où est-ce que tu as récupéré ce script ?
0
ooula, je ne comprends pas ce que tu veux dire
j'ai une page recherches.html et je voudrais que le résultat s'y affiche
sinon le script je l'ai récupéré parmi tant d'autres trouvé sur le net...

comment procédé ?
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
27 mars 2012 à 11:58
Elle ressemble à quoi ta page recherches.html ?
0
voici ma page recherches.php originelle
ne maitrisant pas du tout ce langage, je ne fais que copier
des codes de droite à gauche en changeant ma page en html et voir quelconque évolution

si quelqu'un s'y connait mieux que moi ce serai pas de refus...

voici le code de la page
<?php
/**
* Search Template
*
* @package Mysitemyway
* @subpackage Template
*/

get_header();

$_GET['variable']

?>

<?php mysite_search(); ?>

<?php mysite_after_page_content(); ?>

<div class="clearboth"></div>
</div><!-- #main_inner -->
</div><!-- #main -->

<?php get_footer(); ?>
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
27 mars 2012 à 13:50
Je ne connais que des recherches simples, comme un annuaire. C'est-à-dire qu'on a une base de données avec un champ NOM et un champ PRENOM. On tape dans notre formulaire un mot et ensuite on fait une requête sql en base pour savoir si dans le champ NOM et PRENOM, il y a quelque chose qui s'en rapproche ou qui est égal.

Mais je ne pense pas que ce soit ça que tu cherches. A part comparer un à un tous les résultats de Google pour "moteur de recherche personnalisable", je ne peux pas t'aider.
0
merci quand même : ))
0
nouveau code intéressant
mais je n'arrive pas à afficher le résultat de la recherche
que dois je faire ?

voici le code :

<script language="Javascript"> function callsearch(){ searchwords=document.searchform.searchwords.value.toLowerCase(); while (searchwords.indexOf(" ")>-1) { pos=searchwords.indexOf(" "); searchwords=searchwords.substring(0,pos)+"+"+ searchwords.substring(pos+1); } location="?keywords="+searchwords+"&and=0"; } </script>
<form action="javascript:callsearch();" name="searchform" method="post"> <input type="text" name="searchwords" size="15"> <input type="submit" onClick="javascript:callsearch();" value="search"> </form>
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
Modifié par AssassinTourist le 27/03/2012 à 17:55
Voici le code commenté pour que tu comprennes ce que ça fait :

Ta fonction javascript
function callsearch(){  
  // on récupère le mot qui a été mis dans le input "searchwords" dans le formulaire "searchform"  
  searchwords=document.searchform.searchwords.value.toLowerCase();  
  // euh là, je vois pas trop ce qu'il fait, juste un pré-traitement sur le mot  
  while (searchwords.indexOf(" ")>-1) {  
    pos=searchwords.indexOf(" ");  
    searchwords=searchwords.substring(0,pos)+"+"+ searchwords.substring(pos+1);  
  }  
  // on rajoute un GET à ton url, la page va se recharger, si j'ai bien saisi  
  location="?keywords="+searchwords+"&and=0";  
}  


Ton code HTML
//on appelle la fonction javascript callsearch lorsqu'on clique sur le bouton.    
<form action="javascript:callsearch();" name="searchform" method="post">    
  //champ de recherche, là où l'utilisateur va rentrer son nom   
  <input type="text" name="searchwords" size="15">    
  <input type="submit" onClick="javascript:callsearch();" value="search">    
</form>


Ca n'affiche rien parce que tu ne fais rien avec le mot rentré. C'est la même chose que ton code précédent : il manque le gros morceau du code pour la recherche. Ca devrait être dans la même page avec un :

En-dessous de ton formulaire
// si la variable get de keywords existe    
if(isset($_GET['keywords'])){   
  // alors on lit le script du moteur de recherche avec le mot donné   
}
0