Na zrzucie ekranu widać, że atrybuty tego produktu są wymienione w pozornie losowej kolejności. W rzeczywistości wydaje się, że jest uporządkowany według identyfikatora atrybutu. Czy istnieje sposób na zmianę tego zamówienia? Każdy atrybut ma właściwość „Pozycja listy”, ale wydaje się, że dotyczy tylko strony produktu, nie wpływa to na koszyk.
8
Odpowiedzi:
Patrząc na funkcję theme_uc_attribute_add_to_cart ubdercart i sposób, w jaki motywuje on wyniki, w tym atrybuty, wydaje się, że możesz osiągnąć to, co chcesz, implementując
hook_form_alter
. Zacznę od znalezieniaform_id
, być może, od dodania instrukcji debugowania w funkcji. Następnie zaimplementowałbym hook_form_alter i zmieniłbym sposób, w jaki atrybuty są uporządkowane w mojej pożądanej kolejności.Jeśli robi to, co chcesz, spróbuj zastosować logikę, aby zobaczyć, gdzie atrybuty są tematyczne i / lub budowane. Następnie podłącz ten mechanizm (
form_alter
lub funkcję przetwarzania wstępnego) i jestem pewien, że osiągniesz to, co chcesz. Mam nadzieję że to pomoże.źródło