[Zend_Lucene] pertinence suivant un champ "vue"
Bonjour a tous,
J'ai mis en place un mini moteur de recherche dans mon site via Zend_Lucene.
J'ai trouver comment booster un champ indéxé, mais il me reste une petite question:
J'ai un champ "nombre de vue" que j'indexe ai un impact sur la pertinence des résultats.
Voici mon code d'indexation (lancé par un cron toutes les nuit)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
foreach($list as $item) {
$doc = new Zend_Search_Lucene_Document();
$doc->addField(Zend_Search_Lucene_Field::Text('id',$item->id));
$f = Zend_Search_Lucene_Field::Text('name',$item->name);
$f->boost=2;
$doc->addField($f);
$doc->addField(Zend_Search_Lucene_Field::Text('desc',$item->desc));
$doc->addField(Zend_Search_Lucene_Field::Text('tags',$item->tags));
$doc->addField(Zend_Search_Lucene_Field::Text('nbview',$item->nbview));
echo "Adding: ". $item->name ."\n";
$index->addDocument($doc);
}
$index->commit(); |
Et mon code de recherche:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
$query =$_GET['query'];
$results = $index->find($query);
if($index->count()) {
$count = 0;
foreach ($results as $result) {
$data[$count]["id"] = $result->id;
$data[$count]["name"] = $result->name;
$data[$count]["desc"] = $result->desc;
$data[$count]["nbview"] = $result->nbview;
$data[$count]["tags"] = $result->tags;
$count++;
}
} |
Merci d'avance