Ik heb een webshop met daarin een navigatie dropdown die de merken toont van de shop.
Dit werkt dmv twig template. (Lightspeed shop).
Op dit moment worden de merken Alfabetisch achter elkaar weergegeven, horizontaal. Ik wil echter dat er vertical gesorteerd wordt. Het aantal kolommen staat vast, 6. Het aantal merken is varial
Ik moet dus de array opknippen in stukjes van 6, uitrekenen hoeveel rijen er komen en vanuit daar per kolom sorteren om dan uiteindelijk weer alles achterelkaar te zetten zodat het juist in de HTML wordt weergegeven.
Huidig resultaat (Array met 13 merken):
A B C D E F
G H I J K L
M
Gewenst resultaat:
A D G J M
B E H K
C F I L
De huidige code is als volgt:
Huidige gedachtengang:
De array deel ik door 6 (aantal kolommen), dan weet ik hoeveel rijen er moeten komen. Op dit moment zijn er 55 merken, dat zou 9,16 rijen zijn, dus afronden naar 10. De 2e positie in de array is dus eigenlijk positie 11 uit de oorspronkelijke array. 3e positie is positie 21, 4e = 31, 5e = 41, 6e = 51.
7e = 2, 8e = 12 etc.
Hoe krijg ik dit voor elkaar in code?
Ik krijg het niet goed in mijn hoofd hoe ik dit moet aanpakken, kan iemand mij op de juiste weg helpen?
Dit werkt dmv twig template. (Lightspeed shop).
Op dit moment worden de merken Alfabetisch achter elkaar weergegeven, horizontaal. Ik wil echter dat er vertical gesorteerd wordt. Het aantal kolommen staat vast, 6. Het aantal merken is varial
Ik moet dus de array opknippen in stukjes van 6, uitrekenen hoeveel rijen er komen en vanuit daar per kolom sorteren om dan uiteindelijk weer alles achterelkaar te zetten zodat het juist in de HTML wordt weergegeven.
Huidig resultaat (Array met 13 merken):
A B C D E F
G H I J K L
M
Gewenst resultaat:
A D G J M
B E H K
C F I L
De huidige code is als volgt:
HTML:
1
2
3
4
5
6
7
8
9
| {% for link in shop.links.brands %} <div class="subnav-rows grid-cell"> <div class="grid"> <div class="grid-cell"> <a href="{{ link.url | url }}" class="sub-title">{{ link.title }}</a> </div> </div> </div> {% endfor %} |
Huidige gedachtengang:
De array deel ik door 6 (aantal kolommen), dan weet ik hoeveel rijen er moeten komen. Op dit moment zijn er 55 merken, dat zou 9,16 rijen zijn, dus afronden naar 10. De 2e positie in de array is dus eigenlijk positie 11 uit de oorspronkelijke array. 3e positie is positie 21, 4e = 31, 5e = 41, 6e = 51.
7e = 2, 8e = 12 etc.
Hoe krijg ik dit voor elkaar in code?
Ik krijg het niet goed in mijn hoofd hoe ik dit moet aanpakken, kan iemand mij op de juiste weg helpen?
>> Signature?