Dynamische Filter

Thema wurde von chpl1, 8. Dezember 2011 erstellt.

  1. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Na prima....

    Etwas, was bei der Filterei auch unbedingt geändert werden muss: die Filterparameterdaten müssen per POST statt per GET übermittelt werden!

    Solche Adresszeilen sind völlig uncool....

    http://www.elektro1a.de/Einbaustrahler/Deckeneinbauleuchten/Einbau-LED/?value_conjunction[11]=0&value_conjunction[3]=0&value_conjunction[12]=0&value_conjunction[1]=0&filter_price_min=&filter_price_max=&gm_boosted_category=Einbau-LED&Einbaustrahler=Deckeneinbauleuchten&Einbau-LED=&cat=c905&cPath=1021_414_905
     
  2. Moritz (Gambio)
    Moritz (Gambio) Administrator
    Registriert seit:
    26. April 2011
    Beiträge:
    5.786
    Danke erhalten:
    2.693
    Danke vergeben:
    903
    Sind und Zweck der GET-Paramter ist, dass man auf ein gefiltertes Ergebnis verlinken kann.
     
  3. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Wer macht den so was?
     
  4. chpl1
    chpl1 Erfahrener Benutzer
    Registriert seit:
    10. Oktober 2011
    Beiträge:
    181
    Danke erhalten:
    10
    Danke vergeben:
    28
    @Avenger: 1000 Dank - genial!!!

    Läuft einwandfrei!
     
  5. Moritz (Gambio)
    Moritz (Gambio) Administrator
    Registriert seit:
    26. April 2011
    Beiträge:
    5.786
    Danke erhalten:
    2.693
    Danke vergeben:
    903
    Da gibt es zig Beispiele. Z. B. könnte man eine Aktion starten, dass alle roten Artikel diese Woche 5% reduziert sind und man dann mittels eines gefilterten Ergebnis alle roten Artikel listen kann.
     
  6. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Da wir ja nun eine Möglichkeit geschaffen haben, nur den "main_content" ohne Seitenreload per AJAX auszutauschen, kann man daran gehen, das weiter zu optimieren.

    Die ganzen "Boxen", die bisher ja weiterhin berechnet werden, werden jetzt natürlich nicht mehr gebraucht, und man kann ihre Neuberechnung unterlassen, und so sicher ein ganze Menge Zeit sparen!

    Das wird erreicht, indem man an den Anfang von "templates\EyeCandy\source\boxes.php" einfügt:

    PHP:
    if ($_GET['ajax_replace']==true)
    {
      return;
    }
    @balou

    Kannst Du das auf Deiner Seite http://www.elektro1a.de/Einbaustrahl...ten/Einbau-LED mal einbauen?

    Derzeit wird bei der Filterauswahl ca. 1 Sekunde für die Neuberechnung der Seite benötigt.

    Bin mal gespannt, was die nicht berechneten Boxen an Zeitgewinn bringen....

    Und dann gibt es ja noch andere Shopfunktionen, bei denen sich der Einsatz dieser AJAX-Funktionalität anbietet, da sich nur der Content-Bereich ändert...

    Zum einen sind das natürlich die Kategorie- und Artikellisten, aber auch die Blätterfunktion in der Detailseite. (Fällt noch jemandem etwas ein?)

    Muss ich mir mal genauer ansehen......
     
  7. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Welche Performancegründe?

    Das ist ja allerhöchstens (ein winziges) Problem beim ersten Laden des Shops, ab der 2. Seite wird das ja aus dem Cache geladen.

    Alle anderen Shop-Systeme, die ich kenne, laden jQuery (aus den genannten Gründen) direkt in der Seite.

    Ohne die angedachte Möglichkeit zu kennen, sage ich jetzt einfach mal: das ist nicht praktikabel!

    Denn bei dem meisten eigenen jQuery-Funktionen benötigt man Informationen, die nur an dieser Stelle in einem Template verfügbar sind....

    Bei dem unter http://www.gambio-forum.de/threads/4375-Dynamische-Filter?p=17578&viewfull=1#post17578 Preis-Slider muss das Skript ja mit den Min-/Max- und aktuellen Werten initialisiert werden....

    Zudem ist es sehr vorteilhaft, wenn man die jQuery-Funktionen dort einbaut, wo sie verwendet werden, und nicht irgendwo anders.....

    Das solltet Ihr Euch noch mal überlegen.

    Ich werde natürlich jQuery weiterhin dort laden, wo es benötigt wird, aber das kostet (wenn auch nur minimalste) Performance...
     
  8. 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
    schönes Weihnachtsgeschenk, 100% - danke!
     
  9. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Hast Du das im Shop aktiv?

    Mit AJAX Unterbindung der der Boxenberechnung?

    Wo kann man das sehen?
     
  10. 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
    nein noch nicht, ich weis auch noch nicht obs heute klappt, falls ja ist es im Liveshop bis 20.00 Uhr drinne.
     
  11. balou...sagt "Auf Wiedersehn"
    balou...sagt "Auf Wiedersehn" Erfahrener Benutzer
    Registriert seit:
    7. Juni 2011
    Beiträge:
    1.766
    Danke erhalten:
    374
    Danke vergeben:
    134
    jeeep ist drinn...schau mal meine es ist schneller gerade beim IE9
     
  12. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Liegt jetzt bei 800ms, als 20% schneller...

    Ist ja auch was...
     
  13. chris801255
    chris801255 Erfahrener Benutzer
    Registriert seit:
    26. Mai 2011
    Beiträge:
    280
    Danke erhalten:
    15
    Danke vergeben:
    118
    Ich hab das bei uns auch mal eingebaut und es ist wirklich eine tolle Sache!

    siehe hier: http://www.modehaus-siemers.de/Bettwaren/Matratzen/Kaltschaummatratzen/#17

    Einen kleinen Bug habe ich allerdings gefunden: Wenn man eine Filterauswahl getroffen hat, klappt das "megadropdown" in der Kategorieleiste nicht mehr auf.

    Und noch eine Frage: Wie bekomme ich bei dem Preisfilter einen Schieberegler hin?
     
  14. balou...sagt "Auf Wiedersehn"
    balou...sagt "Auf Wiedersehn" Erfahrener Benutzer
    Registriert seit:
    7. Juni 2011
    Beiträge:
    1.766
    Danke erhalten:
    374
    Danke vergeben:
    134
    stelle ich den
    PHP:
    function xmit_data()
    {
      if (
    true
    auf false wird zwar ajax ausgeschaltet aber das megadropdown geht wieder.
     
  15. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Das kriegen wir (denke ich) auch mit AJAX hin.....

    In "eyecandy/index.html" den Bereich

    PHP:
                <div id="main" class="clearfix">
                    {if 
    $BANNER}<div id="shop_top_banner">{$BANNER}</div>{/if}
                    <
    div id="main_inside">
                        {
    $IMGSLIDER}
                        {
    $main_content}
                        {
    $CATEGORIES_DROPDOWN}
                    </
    div>
                </
    div>
    ändern zu

    PHP:
                <div id="main" class="clearfix">
                    {if 
    $BANNER}<div id="shop_top_banner">{$BANNER}</div>{/if}
                     {
    $IMGSLIDER}
                    {
    $CATEGORIES_DROPDOWN}
                     <
    div id="main_inside">
                        {
    $main_content}
                    </
    div>
                </
    div>
     
  16. Hanjü
    Hanjü Erfahrener Benutzer
    Registriert seit:
    15. August 2011
    Beiträge:
    174
    Danke erhalten:
    5
    Danke vergeben:
    42
    Hallo,
    ich habe es eben bei uns eingebaut, und kann nur sagen " Du bist ein Genie".

    Tausend Dank.
     
  17. chpl1
    chpl1 Erfahrener Benutzer
    Registriert seit:
    10. Oktober 2011
    Beiträge:
    181
    Danke erhalten:
    10
    Danke vergeben:
    28
    Hallo Avenger,

    ich weiss du bist zur Zeit schwer beschäftigt mit dem ServicePack und soweit ich das beurteilen kann, verrichtest du da auch ne Wahnsinnsarbeit :D ! Aber wäre toll, wenn du hierzu vielleicht auch ne Lösungsidee hättest:

    Ist mir anfangs nicht aufgefallen...
    Wenn ich wie auf Bild "ohneAjaxFilterung" zu sehen, einfach die Artikelseiten durchblättere --> no problemo!
    Wenn ich die Artikel allerdings erst filtere und dann die gefilterten Egebnisse durchblättere zerschiesst es mir in allen Browsern das Template, wie in Bild "mitAjaxFilterung" erkennbar!

    Hast du ne Idee was schief läuft??

    Grüsse
    chpl1
     

    Anhänge:

  18. chpl1
    chpl1 Erfahrener Benutzer
    Registriert seit:
    10. Oktober 2011
    Beiträge:
    181
    Danke erhalten:
    10
    Danke vergeben:
    28
    Noch ein kleiner Schönheitsfehler ist mir aufgefallen:

    Wenn ich einen "zurück-button" wie hier http://www.gambio-forum.de/threads/3720-zur%C3%BCck-zur-Produkt%C3%BCbersicht
    in der Artikeldetailansicht einfüge, gibt es ne kleine Unstimmigkeit:

    Sagen wir ich hab eine Kategorie deren Artikel ich nach einem Wert filtere. Jetzt öffne ich in dieser gefilterten Auswahl einen Artikel und geh danach wieder über den button zurück zu meiner Auswahl. Das Problem ist, dass man nicht zur gefilterten Auswahl zurückkommt (obwohl das Häkchen im entsprechenden Kästchen noch sichtbar ist), sondern zur allgemeinen Atikelübersicht.

    Grüsse
    chpl1
     
  19. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Eigentlich nicht....

    Denn AJAX ist ja nur eine andere Art, Daten zu laden, sonstige Eingriffe erfolgen nicht...

    Hast Du das online, dass ich mir das mal anschauen kann?
     
  20. chpl1
    chpl1 Erfahrener Benutzer
    Registriert seit:
    10. Oktober 2011
    Beiträge:
    181
    Danke erhalten:
    10
    Danke vergeben:
    28
    Moin moin,

    ich kann den Shop gerne bis 8? online stellen...hoffe du liest das vorher :D . Eigentlich ist der Shop noch off und soll das bis zum Start auch bleiben, da bisher weder AGB noch einige andere Kleinigkeiten formuliert sind, aber für so nen kurzen Zeitraum geh ich das Risiko mal ein^^

    Link: www.cocoglam.de