halir Posted February 11, 2021 Share Posted February 11, 2021 Hallo, ich habe jetzt schon einige Zeit das Forum durchstöbert, bin aber leider nicht ans Ziel gelangt. Unser Problem ist folgendes: Auf dem Lieferschein erscheinen die bestellten Artikel in der Reihenfolge, in der der Kunde sie in den Warenkorb gelegt hat. Für unsere Mitarbeiter im Lager wäre es aber von Vorteil die Artikel dort sortiert nach Artikelnummer auszugeben. Gibt es dazu eine Möglichkeit das Ganze zu realisieren? Wir nutzen momentan die Shop-Version 1.7.6.1 Vielen Dank im Voraus! (: Link to comment Share on other sites More sharing options...
rictools Posted February 11, 2021 Share Posted February 11, 2021 Bei mir (1.6.1.4) sortiert er die alphabetisch ... Link to comment Share on other sites More sharing options...
halir Posted February 12, 2021 Author Share Posted February 12, 2021 @rictools hat recht, ich habe gerade nochmal nachgeschaut, die Artikel sind alphabetisch sortiert. Trotz allem wäre es schön sie nach den Artikelnummern zu sortieren - besteht dazu die Möglichkeit? Link to comment Share on other sites More sharing options...
JBW Posted February 12, 2021 Share Posted February 12, 2021 Dazu müsstest du dir einen Override für classes\pdf\HTMLTemplateDeliverySlip.php machen und in getContent() das Array orderDetails umsortieren. Link to comment Share on other sites More sharing options...
halir Posted February 21, 2021 Author Share Posted February 21, 2021 @JBWDanke für die Antwort. Ich habe mich jetzt schon soweit durchgekämpft, dass ich die HTMLTemplateDeliverySlip.php in den Override-Ordner kopieren muss und dazu im Anschluss noch im Backend die Overrides aktivieren muss - habe ich das soweit richtig verstanden? In der override-Datei muss ich dann dem oderDetails-Array ein 'asort()' mitgeben, mit dem ich ihm sage, dass es nach der Artikelnummer und nicht dem Namen sortiert werden soll?! $order_details = $this->order_invoice->getProducts(); if (Configuration::get('PS_PDF_IMG_DELIVERY')) { foreach ($order_details as &$order_detail) { if ($order_detail['image'] != null) { $name = 'product_mini_' . (int) $order_detail['product_id'] . (isset($order_detail['product_attribute_id']) ? '_' . (int) $order_detail['product_attribute_id'] : '') . '.jpg'; $path = _PS_PROD_IMG_DIR_ . $order_detail['image']->getExistingImgPath() . '.jpg'; $order_detail['image_tag'] = preg_replace( '/\.*' . preg_quote(__PS_BASE_URI__, '/') . '/', _PS_ROOT_DIR_ . DIRECTORY_SEPARATOR, ImageManager::thumbnail($path, $name, 45, 'jpg', false), 1 ); if (file_exists(_PS_TMP_IMG_DIR_ . $name)) { $order_detail['image_size'] = getimagesize(_PS_TMP_IMG_DIR_ . $name); } else { $order_detail['image_size'] = false; } } } } Leider weiß ich noch nicht genau, an welcher Stelle ich das Ganze einfügen muss. - Könntest Du mir dazu noch einen Tipp geben? Beste Grüße und einen schönen Sonntag! 🙂 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now