Hallo,
ich möchte bei der Suche im Shop auch nach den Varianten suchen, speziell oxvarselect.
in der oxsearch.php habe ich die zeile 220
$sSelect .= " and {$sArticleTable}.oxparentid = ‘’ and {$sArticleTable}.oxissearch = 1 ";
in $sSelect .= " and {$sArticleTable}.oxissearch = 1 ";
abgeändert. Jetzt fehlt mir allerdings eine Abfrage, mit welcher ich doppelte Artikelausgaben vermeiden kann.
Wie stelle ich das am besten an ?
Beste Grüße
Hardy
Hallo Hardy 
ich würde es an deiner Stelle mit einem GROUP BY Argument in deiner MySQL Abfrage lösen.
...
$sSelect .= $sWhere;
$sSelect .= " group by {$sArticleTable}.oxid ";
if ( $sSortBy ) {
$sSelect .= " order by {$sSortBy} ";
}
return $sSelect;
...
Viele Grüße
indianer3c
Doppelte oxids wären sehr merkwürdig. Liegt es vielleicht an den Titeln 
[QUOTE=foxido.de;140555]Doppelte oxids wären sehr merkwürdig. Liegt es vielleicht an den Titeln
[/QUOTE]
Stimmt, aber wie wäre dann die GROUP BY Bedingung? Ich nahm an, dass vielleicht JOINS greifen die für die doppelte Einträge von Artikeln sorgen. Deswegen war mein Gedanke die doppelten Einträge durch ein GROUP BY zu verhindern.
Ich denke, dass es schon verschiedene Varianten sind, die angezeigt werden, aber mit gleichen Titeln des Vaters.
Hallo,
danke für die vielen Beiträge.
[QUOTE=foxido.de;140577]Ich denke, dass es schon verschiedene Varianten sind, die angezeigt werden, aber mit gleichen Titeln des Vaters.[/QUOTE]
Ja genau, sobald ich zB. Blau eingebe, dann gibt es Artikel A | Gr.S
Artikel A | Gr.M
Artikel A | Gr. L usw.
Ich denke, ich müsste dann eine Routine schreiben, die dann den Vaterartikel ausgibt und doppelte Ausgaben anhand der ID aussortiert.
Für mich gerade sehr knifflig, da ich keinen Schimmer habe wie ich das ganze anpacken soll.
Hallo shirtsfun 
genau dafür war doch {$sArticleTable}.oxparentid = ‘’ gedacht… Hört sich dann eher nach einem Datenhaltungsproblem an, dass Artikel falsche Kinder zugeordnet bekommen haben.
Viele Grüße
indianer3c
[QUOTE=indianer3c;140605]genau dafür war doch {$sArticleTable}.oxparentid = ‘’ gedacht… Hört sich dann eher nach einem Datenhaltungsproblem an, dass Artikel falsche Kinder zugeordnet bekommen haben.
[/QUOTE]
mhh, aber wenn ich diese Zeile unverändert lasse, dann spuckt die Suche keine Suchergebnisse in den Varianten aus.
Die Kinder passen auch alle zum Vater nur das jeder Treffer in der Suche ausgegeben wird anstatt zu filtern.
kannst dir das ja einmal anschauen… http://onlineshop.shirtsfun.com
[QUOTE=shirtsfun;140601]Hallo,
Artikel A | Gr.S
Artikel A | Gr.M
Artikel A | Gr. L usw.
[/QUOTE]
Dabei bleibt oxtitle der Varianten leer (normalerweise). Entweder das Feld befüllen oder oxvarselect in die Suchergebnisse einfügen.
[QUOTE=foxido.de;140608]Dabei bleibt oxtitle der Varianten leer (normalerweise). Entweder das Feld befüllen oder oxvarname in die Suchergebnisse einfügen.[/QUOTE]
Funktioniert alles irgendwie nicht so recht.
Würde jetzt nachträglich in der tpl Datei filtern, allerdings suche ich noch die Datei durch die alle Suchtreffer durchlaufen.
listitem_infogrid.tpl bekommt die Daten von der list.tpl
aber wo bekommt sie ihre Treffer ?
search // oxsearch
Das ist aber unerheblich. In der listitem_grid steht in Zeile 70 folgendes:
[{ $product->oxarticles__oxtitle->value }] [{$product->oxarticles__oxvarselect->value}]
Wenn bei Dir alles korrekt eingetragen ist, sollte auch in der Suche die Variantenbezeichnung erscheinen.
Ich hatte oben oxvarname geschrieben und korrigiert: oxvarselect ist der richtige Wert.