Ich lasse in einem Menüpunkt die Artikel bestimmter Hersteller anzeigen. Welche Seite muss ich hier anpassen, um die Sortierung zu beeinflussen? Aktuell werden die ältesten Artikel zuerst angezeigt und die aktuellsten ganz hinten, also Sortierung nach oxinsert asc.
Hier wird auf jeden Fall nicht die klassische Suche von Oxid angestoßen.
Das Modul von Frank, damit ich die Sortierreihenfolge in der Suche beeinflussen kann, funktioniert übrigens, vielen Dank hierfür!
Über die normale Schnellsortierung ist das nicht möglich, da die Hersteller keine Kategorien sind und ich sie somit nicht als Kategorie auswählen kann.
Hoffe ich konnte es verständlich erklären.
Vielen Dank für eure Hilfe im voraus.
Hier eine Version für Suche und Hersteller (Achtung Dateiname geändert):
<?php
/*
Module to set Fast Sorting for Search and Manufacturers
save as modules/list_presort.php
Add this lines to Master Settings/Core Settings/System/Modules:
search => list_presort
manufacturerlist => list_presort
*/
class list_presort extends list_presort_parent{
public function getSorting( $sCnid )
{
$aSorting = parent::getSorting( $sCnid );
if ( !$aSorting ) {
//Modify to desired list order
$aSorting = array ( 'sortby' => 'OXINSERT', 'sortdir' => 'DESC' );
}
return $aSorting;
}
}
D.h. dann denke ich
search => list_presort ersetzt
search => search_presort
Ich schreibe hier wieder rein, wenn ich das getestet habe.
Vielen Dank vorerst.
Ja, wenn beide die gleiche Default-Sortierung haben sollen reicht ein Modul, also das alte und den Eintrag dazu löschen.
Hallo Frank, genau das habe ich gebraucht. Es funktioniert. Hier wird wirklich einem geholfen! Meinen herzlichsten Dank!
Hi,
kann es sein, dass sich hier was seit OXID 4.7 verändert hat? Wir nutzen folgenden Code um die Markenseiten nach Preis abwärts zu sortieren, aber seit v4.7 funkioniert das nicht mehr:
<?php
class list_presort extends list_presort_parent{
public function getSorting( $sCnid )
{
$aSorting = parent::getSorting( $sCnid );
if ( !$aSorting ) {
//Modify to desired list order
$aSorting = array ( 'sortby' => 'OXPRICE', 'sortdir' => 'DESC' );
}
return $aSorting;
}
}
?>
Danke & Grüße
Andreas
Code für 4.7:
<?php
class list_presort extends list_presort_parent{
public function getDefaultSorting()
{
$aSorting = array ( 'sortby' => 'OXPRICE', 'sortdir' => 'DESC' );
return $aSorting;
}
}
?>
Hallo hab das modul list_presort installiert und dan für 4.7 folgendes ergänzt in der modules/list_presort/views list_presort.php :
<?php
class list_presort extends list_presort_parent{
public function getDefaultSorting()
{
$aSorting = array ( 'sortby' => 'ARTNUM', 'sortdir' => 'ASC' );
return $aSorting;
}
}
?>
ich möchte nach artikel nr sortieren … jedoch funktioniert es nicht … kann mir jemand helfen ?
kann jemand hellfen ? bitte …
Sollte so gehen. Cookies mal gelöscht?
Jaa coockies hab ich gelöscht. . . aber leider immernoch nichts.
nach langem rumprobieren gien ich wieder auf den basis standard code und hatte noch das ox vergessen bei artnum … mit oxartnum gings dan . . .
wer allso die hersteller nach artikelnummer sortieren will bei den hersteller und der suche der nimmt das hier bei 4.7
<?php
class list_presort extends list_presort_parent{
public function getSorting( $sCnid )
{
$aSorting = parent::getSorting( $sCnid );
if ( !$aSorting ) {
//Modify to desired list order
$aSorting = array ( 'sortby' => 'OXARTNUM', 'sortdir' => 'ASC' );
}
return $aSorting;
}
}
Stimmt ist mir gar nicht aufgefallen dass das “ox” fehlt. Danke für das Teilen deiner Lösung!
Hallo,
Gibt es mittlerweile eine Lösung für die 4.9 / 4.10 ?
Das hier zur Verfügung gestellte Modul funktioniert leider bei mir nicht.
In der Modulverwaltung wird mir folgendes angezeigt:
Es wurden ungültige Module erkannt.
Möchten Sie alle registrierten Modulinformationen und gespeicherten Konfigurationseinstellungen löschen?
Module-ID Problematische Dateien
list_presort
search => list_presort/views/list_presort
manufacturerlist => list_presort/views/list_presort
Danke für jede Hilfe