Project starten

Sorteren van losse varianten in WooCommerce werkt niet

Soms zie je problemen met sorteren of de menuvolgorde bij losse varianten in WooCommerce. We leggen uit hoe we dat in onze plugin Single Variations hebben opgelost.

Standaard sorteert WooCommerce producten op een veld “menu_order”. Een voorbeeld:

  • T-Shirt -> 1
  • Hoodie -> 2
  • Pet -> 3

Deze standaardvolgorde wijzig je onder WooCommerce > Producten > Sorteren. Daar sleep je producten in de volgorde die je wilt.

standaardsortering van WooCommerce standaardsortering van WooCommerce

Varianten zijn echter eigen posttypes met een eigen veld menu_order. Bijvoorbeeld:

  • T-Shirt -> 1
    • T-shirt blauw > 1
    • T-shirt rood > 2
    • T-shirt geel > 3
  • Hoodie -> 2
    • Hoodie blauw > 1
    • Hoodie rood > 2
    • Hoodie geel > 3
  • Pet -> 3
    • Pet blauw > 1
    • Pet rood > 2
    • Pet geel > 3

Nu zie je het probleem: op categorie- of overzichtspagina’s staan je producten door elkaar, omdat T-shirt blauw dezelfde volgorde heeft als hoodie en pet blauw:

  1. T-shirt blauw > 1
  2. Hoodie blauw > 1
  3. Pet blauw > 1
  4. …

Om dit op te lossen, hebben we een optie toegevoegd waarmee losse varianten de menuvolgorde van het bovenliggende variabele product overnemen.

losse varianten nemen de menuvolgorde over losse varianten nemen de menuvolgorde over

Na het inschakelen ziet de lijst er zo uit

  • T-Shirt -> 1
    • T-shirt blauw > 1
    • T-shirt rood > 1
    • T-shirt geel > 1
  • Hoodie -> 2
    • Hoodie blauw > 2
    • Hoodie rood > 2
    • Hoodie geel > 2
  • Pet -> 3
    • Pet blauw > 3
    • Pet rood > 3
    • Pet geel > 3

In je categorieoverzichten zie je dan eerst alle T-shirts, daarna de hoodies en dan de petten. Stond dit eerder niet aan, voer dan een reset uit en daarna opnieuw init.

Deze oplossing heeft één nadeel: je kunt varianten binnen één product niet meer sorteren (mocht je dat al willen).

volgorde van losse varianten volgorde van losse varianten

Moet je varianten per product kunnen sorteren en vind je een gemengde categorievolgorde geen probleem, zet de optie dan uit in de plugininstellingen.