Jump to content
xt:Commerce Community Forum

Solved ! Sortieren nach Hersteller im Produkt-Listing !


oldbear

Recommended Posts

hallo Freunde,

der eine oder andere wird sich darüber freuen:

Ich habe das Dropdown für die Sortierung im Artikel-Listing auf Hersteller auf-/absteigend erweitert.

Wies geht:

In der class.products_list.php die function getSortDropdown() um diese zwei Zeilen ergänzen:

$options[] = array('id'=>'manufacturer','text'=>SORT_MANUFACTURER);

$options[] = array('id'=>'manufacturer-desc','text'=>SORT_MANUFACTURER_DESC);

und die beiden Sprachtexte anlegen.

In der class.product_sql_query.php die function F_Sorting($sort) um diese Zeilen erweitern:

case 'manufacturer' :

$this->setSQL_SORT(' p.manufacturers_id');

break;

case 'manufacturer-desc' :

$this->setSQL_SORT(' p.manufacturers_id DESC');

break;

Zur sinnvollen Nutzung ist noch das Plugin "mz_box_hersteller" von Mario nötig, damit die Hersteller auch angezeigt werden.

mit ein paar Zeilen im Listing kann man den Hersteller auch nur dann anzeigen, wenn er wechselt:

{assign var=man_id value=''}

{foreach name=aussen item=module_data from=$product_listing}

{if $man_id neq $module_data.manufacturers_id}

{box name=mz_box_hersteller type=user manufacturer=$module_data.manufacturers_id}

{assign var=man_id value=$module_data.manufacturers_id}

{/if}

....

{/foreach}

Grüsse

P.S.: Auf die Art kann man auch nach anderen, zusätzlichen Kriterien im Produkt sortieren !

:D

Ergänzung: Richtig Sinn macht das noch mit einer alphabetischen Sortierung der Hersteller, die ich unter "Hersteller sortieren ganz easy" bereits gepostet habe.

Link to comment
Share on other sites

mein held des tages!! dankeschön!

wenn du nun noch rausfindest, wie man das zusätzliche dropdown >>produkte eines herstellers in der kategorie anzeigen<< programmiert, bist du mein held monats :D

aber danke, das ist super!!!!

lg

aber mal noch eine frage: wie ist das, wenn man so viele artikel hat, dass es mehrere seiten gibt, wird es dann auch noch richtig sortiert?

Link to comment
Share on other sites

Sehr schöne Funktion :)

Die Möglichkeit in der ausgewählten Kategorie nur die Produkte eines Hersteller anzuzeigen würde mich aber auch noch sehr interessieren.

Dies könnte man dann z.B. auch noch auf andere Sachen anwenden (verschiedene Preisspannen, Artikelkriterien etc.).

Nachtrag:

Sobald ich die beiden veränderten Dateien hochgeladen habe kann ich mich nicht mehr ins Backend einloggen.

Folgende Fehlermeldung erscheint:

Warning: Cannot modify header information - headers already sent by (output started at /is/htdocs/wp1145517_IGW20XCTU5/www/shop/xtFramework/classes/class.products_list.php:1) in /is/htdocs/wp1145517_IGW20XCTU5/www/shop/xtFramework/classes/class.acl.php on line 0

Link to comment
Share on other sites

$options[] = array('id'=>'name','text'=>SORT_NAME);

$options[] = array('id'=>'name-desc','text'=>SORT_NAME_DESC);

$options[] = array('id'=>'manufacturer','text'=>SORT_MANUFACTURER);

$options[] = array('id'=>'manufacturer-desc','text'=>SORT_MANUFACTURER_DESC);

$data['options'] = $options;

return $data;

case 'date-desc' :

if ($this->position == 'products_specials')

$this->setSQL_SORT(' s.date_added DESC');

else

$this->setSQL_SORT(' p.date_added DESC');

break;

case 'manufacturer' :

$this->setSQL_SORT(' p.manufacturers_id');

break;

case 'manufacturer-desc' :

$this->setSQL_SORT(' p.manufacturers_id DESC');

break;

default:

$this->setSQL_SORT(' p.products_sort');

break;

//return false;

Link to comment
Share on other sites

hi,

wie schon gesagt, Hersteller per SQL eingelesen in Tabelle vom Aufbau $sort_dropdown.options, Variable ans Dropdown übergeben, das Dropdown leicht modifiziert und ausgewählte Hersteller-Id ins Template übergeben.

Der Rest ist Abfrage im foreach des Templates ( da brauchs natürlich ein paar if´s )

hing aber schon eine ganze Zeitlang dran ...

Grüsse

Link to comment
Share on other sites

hi,

ich bilde mir ein, schon etliche brauchbare Sachen veröffentlicht zu haben, und es schmerzt manchmal schon etwas, wenn man auf seine Fragen zu ähnlich "schwierigen" Fällen fast keine Antworten bekommt.

Ich bau mir gerade eine neue Homepage auf Basis von Joomla auf und will dort auch eine Veyton-Ecke einrichten, vielleicht dann dort !

( zu allem Überfluss lebe ich von dem "Sch...." )

Grüsse

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...