Wo und wie kann man die verfügbaren Shipping Methoden sortieren? Ist nicht wahr, dass man das nicht kann?
Die jetzige Reihenfolge scheint eine Komination der Mondphase und der Windrichtung?
Genau so sieht’s aus
Ich nehme das hier noch mal auf - laut der Shopware 6 Doku soll der Wert unter „Position“ die Reihenfolge bestimmen: „Hier siehst du, an welcher Position die entsprechende Versandart im Checkout angezeigt wird.“
Sieht man sich den Quellcode des relevanten Twig-Templates an, so wird hier gar nichts berücksichtigt bez. einer Sortierung via „Position“…
So - ich bin dem nun mal tiefer nachgegangen und konnte den Umstand beheben!
Warum die Sortierung (unter Berücksichtigung der bereits dafür vorgesehenen Option „Position“) in dem entsprechenden Shopware-Template nicht implementiert wurde, ist schleierhaft…
Vorweg:: man sollte das natürlich NICHT im Shopware-Template anpassen, sondern den Block als Override in seinem eigenen Template implementieren.
Die besagte Datei ist:
vendor\shopware\storefront\Resources\views\storefront\component\shipping\shipping-fields.html.twig
Hier die Zeile 9:
{% for shipping in page.shippingMethods[:visibleShippingMethodsLimit] %}
Diese abändern / ersetzen wie folgt:
{% for shipping in page.shippingMethods[:visibleShippingMethodsLimit]|sort((a, b) => a.position <=> b.position) %}
Cache löschen & ggf. Theme neu kompilieren.
Dann wird die definierte Zahl unter „Position“ unter „Versandarten“ auch bez. der sortierten Ausgabe berücksichtigt
Einen entsprechenden commit auf Github habe ich soeben getätigt. Mal sehen, ob das übernommen wird.