• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Сортировка атрибутов на карточке товара

DarkAlien

Форумчанин
Добрый день, видел что вопрос не новый и ответа так и не нашёл,
порядок атрибутов добавляется в зависимости от порядка добавления атрибутов в сам товар,
подскажите пожалуйста есть ли способ поставить атрибуты в нужном порядке, простым способом т.к. перетаскивать атрибуты из разных мест в разные места у каждого товара это ад
 

joy66

Опытный
Местный
Речь про атрибуты или значения атрибутов?
И что вы имеете ввиду под "простым" способом?
Если про сами атрибуты, а товаров много, то можно можно воспользоваться WP ALL Import Pro
 
Последнее редактирование:

DarkAlien

Форумчанин
речь идёт именно про Атрибуты а не про значения, т.к. по умолчанию в карточке товара они встают в порядке их добавления
 

DarkAlien

Форумчанин
Речь про атрибуты или значения атрибутов?
И что вы имеете ввиду под "простым" способом?
Если про сами атрибуты, а товаров много, то можно можно воспользоваться WP ALL Import можно немного подробнее, или хотя бы переменную где и какую искать
 

marr

Специалист
Местный
подскажите пожалуйста есть ли способ поставить атрибуты в нужном порядке, простым способом т.к. перетаскивать атрибуты из разных мест в разные места у каждого товара это ад
Не знаю что для вас "нужный" порядок, но ассоциативный массив можно сортировать PHP-функциями ksort() и asort(). При этом сохраняется связь между индексами и значениями.

Например, для сортировки атрибутов в порядке возрастания используйте такую функцию:

Код:
add_filter( 'woocommerce_display_product_attributes', 'woocommerce_sort_product_attributes', 10, 2 );
function woocommerce_sort_product_attributes ( $product_attributes, $product ) {
    ksort( $product_attributes );
    return $product_attributes;
}
 

DarkAlien

Форумчанин
Не знаю что для вас "нужный" порядок, но ассоциативный массив можно сортировать PHP-функциями ksort() и asort(). При этом сохраняется связь между индексами и значениями.

Например, для сортировки атрибутов в порядке возрастания используйте такую функцию:

Код:
add_filter( 'woocommerce_display_product_attributes', 'woocommerce_sort_product_attributes', 10, 2 );
function woocommerce_sort_product_attributes ( $product_attributes, $product ) {
    ksort( $product_attributes );
    return $product_attributes;
}
Большое Спасибо, частично решило проблему он их выводит как в списке Атрибуты, теперь вопрос как их выставить в порядке относительно ярлыка или id
например 15-1-16-2 и тд
 

marr

Специалист
Местный
Нет такой возможности. Изменить порядок можно только через импорт-экспорт
 
Сверху Снизу