als kleines Wochend Gimmick haben wir das jquery infinitescroll plugin mit oxid verheiratet. Dadurch spart sich der User so einige klicks und das Shopping Erlebnis wird einfach ein bisschen besser:
Hi,
wow, zunächst mal vielen Dank, das ist wirklich eine sehr schöne Sache. Hab das mal getestet und der Code funktioniert so nicht, es wird nur einmal nachgeladen, dann kommt ein Fehler.
So funktioniert es (Quelle http://oxidtemplate.aggrosoft.de/Alles/):
[{if $listId && $place == 'bottom'}]
[{capture assign=infiniteScroll}]
$(function(){
$('#[{$listId}]').infinitescroll({
navSelector : "div.refineParams.bottomParams",
// selector for the paged navigation (it will be hidden)
nextSelector : "div.pager a.next",
// selector for the NEXT link (to page 2)
itemSelector : "#[{$listId}] li.productData",
// selector for all items you'll retrieve
path: function(page){
[{assign var=fp value='&'|str_replace:'&':$pages->firstpage}]
[{if $fp|stristr:'index.php' === FALSE}]
return '[{$fp}]'+page;
[{else}]
return '[{$fp}]&pgNr='+(page-1);
[{/if}]
},
loading: {
msgText: 'Lade Daten ...',
finishedMsg: 'Keine weiteren Produkte gefunden',
finished: function(){
$('#infscr-loading').remove();
$('a.js-external').attr('target', '_blank');
try{
$('div.dropDown p').oxDropDown();
}catch(e){}
try{
$( '.pictureBox' ).oxCenterElementOnHover();
}catch(e){}
}
}
});
})
[{/capture}]
[{oxscript include="js/jquery.infinitescroll.min.js"}]
[{oxscript add=$infiniteScroll}]
[{/if}]
Auch der Pfad zur js-Datei ist nicht korrekt, der müsste lauten: out/Themename/src/js.
Ich bekomme es leider nicht in die Suchergebnisse eingebaut, das Anhängen der listId=“productList” in der search.tpl bewirkt nichts.
Wahrscheinlich stell ich mich einfach zu “ungeschickt” an, so kurz vor dem Wochenende, evtl hat ja jemand einen Tipp
Ich habe die Änderungen in Blocks verschoben und als Modul verpackt.
Und es funktioniert in der Suche und auf den Artikelseiten.
Bei den Herstellern müsste es eigentlich auch gehen, aber ich habe in keinem der Shops mehr als 10 Produkte von einem Hersteller
Da muss aber ein Fehler drin sein, bei mir funktioniert das Modul nicht (frischer Azureshop).
Fehler: Uncaught TypeError: [object Object] has no method “infinitescroll”
Ah, habe den Fehler schon gefunden:
In der base.js.tpl Zeil 32 stimmt der Modulordner nicht. Müsste [{oxscript include=$oViewConf->getModuleUrl(‘ag-isal’,‘out/src/jquery.infinitescroll.min.js’) }] heissen, dann funktioniert es.
Danke nochmal an Marat fürs aufräumen und hochladen, ich hatte vorhin einfach keine Zeit - außerdem hat er noch einen intelligenten Selektor für die Liste an sich hinzugefügt der das ganze noch einfacher macht sowie es in Modulform gebracht. Jetzt kann es jeder nutzen