Ich möchte die Logik oder den Algorithmus hinter der Suchfunktion in Magento Connect verstehen, wenn die Option Sortieren nach in Suche verfeinern auf Nach Relavenz sortieren eingestellt ist
Ich möchte die Logik oder den Algorithmus hinter der Suchfunktion in Magento Connect verstehen, wenn die Option Sortieren nach in Suche verfeinern auf Nach Relavenz sortieren eingestellt ist
Antworten:
Ich würde annehmen, dass die Suche mit dem MySQL FULLTEXT-Index implementiert wird.
Hier ist ein Zitat aus der offiziellen MySQL-Dokumentation zur Funktionsweise dieses Index:
Zurückgegebene Zeilen werden automatisch mit der höchsten Relevanz zuerst sortiert. Relevanzwerte sind nichtnegative Gleitkommazahlen. Null Relevanz bedeutet keine Ähnlichkeit. Die Relevanz wird basierend auf der Anzahl der Wörter in der Zeile, der Anzahl der eindeutigen Wörter in dieser Zeile, der Gesamtanzahl der Wörter in der Sammlung und der Anzahl der Dokumente (Zeilen) berechnet, die ein bestimmtes Wort enthalten.
Als Beweis dafür können Sie versuchen, eine Suche auf der Magento Connect-Website mit den folgenden Suchbegriffen durchzuführen:
Für das erste Semester sind die ersten Ergebnisse Module mit Titeln:
Zum zweiten:
Für den letzten:
Wie Sie in allen Fällen sehen können, enthält der Titel der ersten Elemente mehr als einen Suchbegriff, sodass deren Relevanz höher ist.
So funktioniert die Magento Connect-Suche.
Während Magento.com auf Drupal basiert, scheint Magento Connect Magento selbst zu verwenden, zumindest als Grundlage.
magento-connect/catalogsearch/result/?q=TERM
die verwendeten JavaScript-Dateien:
Pfade zu CSS-Dateien wie http://www.magentocommerce.com/magento-connect/skin/frontend/enterprise/connect/css/base.css mit Lizenz, deren Header Folgendes enthält:
* @category design
* @package enterprise_connect
* @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
* @license http://www.magentocommerce.com/license/enterprise-edition
Mit diesen Informationen können wir uns darauf einigen, dass die Suche genauso funktioniert wie in Magento Enterprise. Nun gibt es mehrere Möglichkeiten:
Wie Sie sehen können , wenn Sie für beliebige Suchbegriff - Kombinationen zu suchen, ist es nicht die Standard - LIKE
Suche mit , OR
dass jeder hasst. Entweder ist es die Volltextsuche, die standardmäßig nach Relevanz sortiert, wie von @alex_b vorgeschlagen, oder die Solr-Suche des Enterprise_Search-Moduls, für die ich wahrscheinlich keine Details preisgeben darf.