verbesserte Suche

Thema wurde von sirtet, 25. September 2013 erstellt.

  1. sirtet

    sirtet Erfahrener Benutzer

    Registriert seit:
    4. Juli 2012
    Beiträge:
    994
    Danke erhalten:
    80
    Danke vergeben:
    76
    #1 sirtet, 25. September 2013
    Zuletzt bearbeitet: 25. September 2013
    Ich habe die Standard-Suche etwas verbessert, respektive bisher erst die Darstellung der LiveSearch AJAX Resultate.
    Hoffentlich kommt hier noch Input, die Sache weiter aufzubohren!


    Warum:
    Mich stört an der eingebauten Suche, dass eine sehr komische Gewichtung (oder auch keine) passiert. Dadurch bekomme ich Treffer mit Übereinstimmung im Titel meist nicht an erster Stelle, was vor allem im LiveSearch dumm ist, da man dort normal nur den Titel zu sehen bekommt.
    Da ich bis jetzt die Gewichtung noch nicht verstehe (ist übrigens im LiveSearch und der Suchresultat-Seite nicht gleich!), und somit nicht verbessern kann, hab ich mal Produktbilder als Icons hinzugefügt. So kann man auch optisch abschätzen, ob ein Vorschlag auch ein Treffer ist.

    Das Bild und meine Seite zeigen das Problem der seltsamen Sortierung, und die Icon-Lösung:
    LiveSearch.jpg

    Ich hatte schon einmal nach verbesserter Suche gefragt, Avenger's dort erwähnte Lösung aber nie probiert, da die glaube ich die AJAX-Suche nicht betrifft...


    Wie:
    Erst nach fast einem Jahr habe ich entdeckt, dass bei Hover über den Livesearch-Resultat-Namen Bilder nachgeladen werden. Da dachte ich, die müsste man schon ohne Hover zeigen können.

    Meine HTML,CSS,JS,PHP.SQL-Kenntnisse sind eher Lahm, nur her mit Verbesserungsvorschlägen!
    Beim Analysieren hab ich folgendes herausgefunden und umgesetzt:

    Das Template
    \catalog\templates\EyeCandy\module\gm_live_search.html
    ist zuständig für das Ergebnis der AJAX-Suche, hab ich so angepasst:
    HTML:
    {load_language_text section="index"}
    
    {if $module_content}
    	<span id="live_search_head">{$txt.text_live_search_head}:</span>
    	<ul>
    	{foreach name=aussen item=module_data from=$module_content}		
    		<li><a href="{$module_data.PRODUCTS_URL}"><span id="livesearch_{$module_data.PRODUCTS_ID}" class="flyover_item"><span class="ls_thumb"><img src="{$module_data.PRODUCTS_IMAGE}" /></span><span class="ls_name">{$module_data.PRODUCTS_NAME}</span></span></a></li>
    	{/foreach}
    	</ul>
    {/if}	
    Die Daten dafür kommen aus
    \catalog\gm\ajax\live_search.php
    hier hab ich die Abfrage der Artikel-Bild URL ergänzt:
    nach Zeile 56 im SQL
    PHP:
    p.products_image AS products_image
    und nach Zeile 83 die Variable zur Verwendung im Template:
    PHP:
    'PRODUCTS_IMAGE' => DIR_WS_IMAGES 'product_images/gallery_images/' $row['products_image']
    und für die Darstellung noch etwas CSS ergänzen, bei mir heisst die Datei
    \catalog\templates\EyeCandy\usermod\css\paddlershop.css
    Code:
    /*livesearch- stuff*/
    
    
    #live_search_container a {
    	margin: 0;
    	padding: 0;
    }
    
    #live_search_container span.flyover_item {
    	display: block;
    }
    
    #live_search_container .ls_thumb {
    	padding: 2px; 
    	width: 40px;
    	text-align: center;
    	display: table-cell;
    	vertical-align: middle;
    }
    
    #live_search_container .ls_thumb img {
    	max-width: 30px;
    	max-height: 20px;
    	background-color: #fff;
    	padding: 2px 5px;
    }
    
    #live_search_container .ls_name {
    	width: 120px;
    	padding: 3px 0;
    	display: table-cell;
    	vertical-align: middle;
    }
    
     
  2. sirtet

    sirtet Erfahrener Benutzer

    Registriert seit:
    4. Juli 2012
    Beiträge:
    994
    Danke erhalten:
    80
    Danke vergeben:
    76
    Also, was mich besonders interessieren würde wär:

    • Was seht ihr für Fehler in meiner Lösung?
    • habt ihr Ergänzungs-Ideen?
    • Als erstes sollte man vielleicht dem System beibringen, echte Icon-Thumbnails der Artikel anzulegen, momentan werden ja die Galerie-Vorschaubilder verkleinert dargestellt.
    • Dann würde ich gerne an der Sortierung rumschrauben, ich würd als erstes Treffer im Artikelnamen an erste Stelle nehmen, dann im haupttext, attribute, etc. wasweissich....
      Das wäre ja in live_search.php. (Und /advanced_search_result.php für die Ergebnisseite).
      Hab das noch nicht recht angeschaut, aber da müsste doch auch was gehen.
     
  3. sirtet

    sirtet Erfahrener Benutzer

    Registriert seit:
    4. Juli 2012
    Beiträge:
    994
    Danke erhalten:
    80
    Danke vergeben:
    76
    Ich habe meine Modifikation weiter ausgebaut, und stelle sie hier mal als ZIP rein, damit sie vielleicht jemand ausprobiert und idealerweise inspiriert wird, sie weiter auszubauen.

    Neben dem Hochladen der Ordnerstruktur muss nur eine Datei umbenannt werden.
    Momentan wird nur die AJAX-Suche verbessert, die normale Treffer-Seite ist noch im Originalzustand.

    Die AJAX-Suche wird verbessert indem

    a) auch Hersteller und Kategorien durchsucht werden
    b) Treffer in Produkttiteln gelistet werden vor solchen in Beschreibungen und Attributen
    c) sofort Miniaturbilder gezeigt werden statt nur bei Hover
     

    Anhänge:

  4. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.583
    Danke erhalten:
    1.484
    Danke vergeben:
    961
    werde ich mir mal im Testshop anschauen und melde mich dann wieder.
     
  5. gunterpirntke

    gunterpirntke Erfahrener Benutzer

    Registriert seit:
    17. Januar 2013
    Beiträge:
    77
    Danke erhalten:
    2
    Danke vergeben:
    30
    Hallo sirtet,

    meinen Dank für das Modul!
    Es ist jetzt Live unter www.das-ebook24.de zu sehen.

    Was Du ändern solltest:

    in der Datei gm/ajax/better-live_search.php
    ist in Zeile 52 ein Link eingetragen, der nicht passen kann.
    Du solltest darauf hin weisen, daß der geändert werden muß.

    Ansonsten sind mir bisher keine Probleme aufgefallen.

    Ich klicke auch bei Dir gerne mal auf Spenden ;-)
    Wenn Du denn mal so einen Button hast.

    Viele Grüße
    Ralf
     
  6. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120
    So, anbei möchte ich euch eine erste Version des Programms zur Verbesserung der Gambio Suche vorstellen. Bitte schaut euch das ca. 3-minütige Video mal an und gebt mir euer Feedback. Es handelt sich im Video natürlich nur um minimale Beispiele. Das Programm kann weitaus mehr und weitere Video-Parts folgen in den nächsten Tagen. Ich hoffe das Video ist verständlich und zeigt das Prinzip dieser Software! Bei Fragen bitte fragen und Verbesserungsvorschläge oder Wünsche gerne hier posten oder mir per E-Mail senden.

    So, hier erstmal der Link.

    (Link nur für registrierte Nutzer sichtbar.)
     
  7. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120
    #7 Anonymous, 17. Oktober 2013
    Zuletzt bearbeitet: 17. Oktober 2013
    Vielleicht nochmal zum Aufbau des Videos. Die Suche wird anhand eines Beispielshops für Schulranzen und Schulrucksäcke vorgestellt.

    1. Es werden zunächst ein paar typische Suchbegriffe eingegeben, zu denen keine (oder nur schlechte) Ergebnisse angezeigt werde wie z.B.
    - 4You Schulrucksäcke (Keine Ergebnisse wegen Pluralform)
    - Schulranzen von Scout (Keine Ergebnisse wegen "von")
    - Schulranzen mit Dinosaurier (Keine Ergebnisse, Schulranzen-Motiv heisst nur z.b. "Dino")
    - Scout Rucksack (zeigt nicht alle relevanten Artikel)

    Hier könnten etliche weitere Beispiel aufgeführt werden.

    Mit Hilfe der Software werden "Alternative Keywords" in einer Liste gespeichert. Das Programm ermittelt dann automatisch alle Artikel zu denen dieser Suchbegriff passt.

    Die einzige Aufgabe zur Optimierung besteht daher lediglich darin, die Liste der "Alternativen Keywords" so gut wie möglich zu pflegen!

    Anschließend klickt der User auf den Button "Generiere Update Statement". Der nun generierte SQL Befehle beinhaltet alle geänderten Produkt-Keywords. Der SQL Befehl kann dann im Gambio Admin Bereich unser SQL (oder direkt im PhpMyAdmin) eingefügt und ausgeführt werden.

    Das wars! Die Suche ist optimiert.

    Im nächsten Video-Part zeige ich euch, dass auch Filterwerte (wenn vorhanden) in die Suche mit einbezogen werden können! Der Mehrwert für die Suche im Onlineshop wird dann sehr schnell klar.
     
  8. Hanjü

    Hanjü Erfahrener Benutzer

    Registriert seit:
    15. August 2011
    Beiträge:
    174
    Danke erhalten:
    5
    Danke vergeben:
    42
    Einfach nur top!
     
  9. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120
    Hier nun der 2. Part unter Berücksichtigung der Filterwerte.

    (Link nur für registrierte Nutzer sichtbar.)

    Mit wenig Aufwand können so auch Artikel nach Name / Geschlecht etc. gefunden werden, wie z.B.

    Schulranzen für Mädchen
    Schulranzen in gelb
    Grüne Sporttaschen für Mädchen

    etc.

    Das Prinzip ist auf ALLE Shops übertragbar! Gerne stehe ich bei Fragen zur Verfügung.
    (Link nur für registrierte Nutzer sichtbar.)
     
  10. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.583
    Danke erhalten:
    1.484
    Danke vergeben:
    961
    macht einen sehr guten Eindruck!!
     
  11. C h r i s t i a n

    C h r i s t i a n G-WARD 2012

    Registriert seit:
    26. April 2011
    Beiträge:
    3.456
    Danke erhalten:
    330
    Danke vergeben:
    551
    dem schliesse ich mich an. Der Hammer wäre noch eine Fehlertollerante Suche ;)
     
  12. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.583
    Danke erhalten:
    1.484
    Danke vergeben:
    961
    dem schliesse ich mich an :)
     
  13. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120
    Der Suchalgorithmus bleibt bei dem hier vorgestellten Programm unverändert, da lediglich die products_keywords erweitert werden! Eine fehlertollerante Suche kann dadurch jedoch nicht gewährleistet werden.

    Was man machen könnte (solange der Gambio-Suchalgorithmus nicht optimiert wurde):
    Häufige Schreibfehler in der Liste der alternativen Suchwörter hinzufügen.
     
  14. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.583
    Danke erhalten:
    1.484
    Danke vergeben:
    961
    das kann man ja jetzt auch schon bei den Suchbegriffen machen.
    Macht aber Deinen Filter deswegen nicht schlechter........
     
  15. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120
    #15 Anonymous, 18. Oktober 2013
    Zuletzt bearbeitet: 18. Oktober 2013
    Ich habe mir die Videos heute selbst nochmal angesehen. Der Schwenk und Zoom-Effekt im 2. Teil ist nicht gewollt und verwirrt ein wenig. Zur Erklärung was dort passiert.

    Im Shopsystem wurden einige Filterwerte hinterlegt. In diesem Fall z.B. Farbe = blau, Geschlecht = Jungs, Produkttyp = Sporttasche.

    Möchte man diese Filterwerte auch in die Suche einbeziehen, muss lediglich die Checkbox "Filterwerte in Suche einbeziehen" angeklickt werden.

    Folgende Suchbegriffe werden dann schon unterstützt:

    "Sporttasche blau"
    "McNeill Sportbeutel blau"
    "Etui blau"
    "Schulranzen Mädchen"
    "Rucksack Jungs"

    Wer Google Analytics oder Piwik nutzt und regelmäßig die Ausstiegsseiten oder die internen Suchbegriffe analysiert, weiß welche Suchbegriffe die Benutzer auf der Homepage suchen und wann sie die Seite wieder verlassen.

    Bei uns suchen die Besucher z.B. nach

    1. "Blaue Schulranzen"
    2. "Sporttaschen für Mädchen"
    3. "Ranzen mit Pferdemotiv"

    ALLE 3 Suchbegriffe führen standardmäßig zu KEINEM Ergebnis!

    Lösung: Ganz einfach ;) !

    1. Software starten
    2. Checkbox "Filterwerte in Suchbegriffe einbeziehen" anklicken
    3. Alternative Suchbegriffe eintragen:
    - blau -> blaue
    - <leer> -> für (quasi als Füllwort für alle Artikel!)
    - Horse -> Pferd (Wenn das Motiv z.B. "Horse" heisst -> Also bei Artikeln mit dem Namen "Etui 23-teilig Horse"
    4. Pferd -> Pferdemotiv (Alle Artikel in denen das Word "Pferd" vorkommt (entweder im Artikelnamen oder in den alternativen Suchbegriffen), werden auch über "Pferdemotiv" gefunden"
    5. Sporttasche -> Sporttaschen (Die Pluralform mach immer Sinn!)

    4. Update-Button klicken
    5. In Gambio SQL Editor einfügen und ausführen!

    FERTIG!
     
  16. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120
    Meine Fragen an euch:

    1. Habt ihr das Prinzip verstanden?
    2. Glaubt ihr, mit diesem Verfahren eure Suche zu verbessern?
    3. Habt ihr Filterwerte gepflegt und macht es Sinn diese Auswahlwerte in die Suche einzubeziehen?
    4. Gibt es weitere Feature-Wünsche? Sollen z.B. Eigenschaftswerte oder Sonstiges berücksichtigt werden?
     
  17. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.583
    Danke erhalten:
    1.484
    Danke vergeben:
    961
    Prinzip verstanden :)
    Suche wird definitiv verbessert werden! Wenn man bei mir im Shop zum bsp. "tunnel kamineinsatz" eingibt, kommt kein Ergebnis. Das würde sich mit deinem Modul sicherlich ändern.
    Wie steht es mit Attributen?

    Generell muss man sich natürlich wundern über Suchbegriffe, die EINDEUTIG bei mir durch U-Kats und Filterwerte abgedeckt werden. Kunden sind wohl doch blöder als man denkt oder woran das auch immer liegen mag........
     
  18. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    10. August 2012
    Beiträge:
    1.554
    Danke erhalten:
    455
    Danke vergeben:
    96
    Ohne die Suchlogik an sich anzufassen, ist dein Weg vermutlich der praktischste. Eigenschaften und Attribute wären vermutlich noch gute Ergänzungen.

    Eine öffentliche Version des Programms hab ich aber nicht übersehen, oder? ^^
     
  19. Hanjü

    Hanjü Erfahrener Benutzer

    Registriert seit:
    15. August 2011
    Beiträge:
    174
    Danke erhalten:
    5
    Danke vergeben:
    42
    Hallo Sirtet,
    nochmal danke für das Modul. Es ist für unsere Firma eine spürbare Erweiterung.

    Keine halbe Stunde nach Einbau kam durch unsere Kunden die erste Rückmeldung,
    selbstverständlich positiv.

    Wer hat's erfunden.....Die Schweizer ;)
    Daumen hoch und....Spitze, mach weiter so ;)
     
  20. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    946
    Danke erhalten:
    68
    Danke vergeben:
    120

    Eine Version stelle ich in Kürze zur Verfügung.

    Nur als Hinweis:
    Meine Lösung kann optimal auch im Zusammenhang mit der Lösung von Siret genutzt werden.