Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Сортировка атрибутов по умолчанию


Recommended Posts

Есть ли возможность изменить сортировку атрибутов в OCstore 3.0.2.0 с алфавитного порядка на порядок по добавлению в карточку товара?

Как они расположены в админке.

Шаблон ULTRASTORE/

Надіслати
Поділитися на інших сайтах


Вообще изначально сортировка атрибутов на странице товара идет в порядке сортировки самих атрибутов и только потом по названию.
Но видимо у вас у всех атрибутов стоит порядок сортировки = 0 и поэтому система по дефолту сортирует по названию.

Возможно вам хватит просто проставить сортировку в атрибутах.
Потому что в таблице атрибутов товара (именно атрибутов товара) не хранится порядок добавления, это нужно добавлять поле в базу, менять функционал, а это повлечет за собой проблемы совместимости с кучей модулей. Но при желании можно, конечно, и такое сделать.

Надіслати
Поділитися на інших сайтах

Если нужно расставить атрибуты так же, как в админке показывается, можно, как вариант, попробовать в модели в запросе атрибутов для товара вообще убрать сортировку.
В админке атрибуты товара берутся без сортировки, порядок выдачи решает сам движок MySQL. Но в этом и сложность - порядок при этом может быть любой.

Надіслати
Поділитися на інших сайтах

6 часов назад, Prooksius сказал:

Если нужно расставить атрибуты так же, как в админке показывается, можно, как вариант, попробовать в модели в запросе атрибутов для товара вообще убрать сортировку.
В админке атрибуты товара берутся без сортировки, порядок выдачи решает сам движок MySQL. Но в этом и сложность - порядок при этом может быть любой.

При таком варианте атрибуты вообще пропадают.

Надіслати
Поділитися на інших сайтах


7 часов назад, kamrik сказал:

Есть ли возможность изменить сортировку атрибутов в OCstore 3.0.2.0 с алфавитного порядка на порядок по добавлению в карточку товара?

Как они расположены в админке.

Шаблон ULTRASTORE/

По идее "порядок добавления нового атрибута" - это уникальное поле 'attribute_id' (таблица 'oc_attribute')

Надіслати
Поділитися на інших сайтах


1 час назад, searchingman сказал:

По идее "порядок добавления нового атрибута" - это уникальное поле 'attribute_id' (таблица 'oc_attribute')

нет, это не так.

Во-первых, в таблице товарных атрибутов оно не уникальное.
Во-вторых, даже если в админке при редактировании товара вставить в конец списка атрибутов товара какой-то атрибут, сохраниться, а потом зайти снова в атрибуты этого товара - новый вставленный только что атрибут может оказаться уже в начале списка. Сортировка запроса в админке неопределена. Поэтому по большому счету на админку тут ориентироваться нет смысла. Порядок добавления атрибутов товара в админке не сохраняется от слова совсем.

 

2 часа назад, kamrik сказал:

При таком варианте атрибуты вообще пропадают.

что-то не так делаете

  • +1 1
Надіслати
Поділитися на інших сайтах

1 час назад, Prooksius сказал:

нет, это не так.

Во-первых, в таблице товарных атрибутов оно не уникальное.
Во-вторых, даже если в админке при редактировании товара вставить в конец списка атрибутов товара какой-то атрибут, сохраниться, а потом зайти снова в атрибуты этого товара - новый вставленный только что атрибут может оказаться уже в начале списка. Сортировка запроса в админке неопределена. Поэтому по большому счету на админку тут ориентироваться нет смысла. Порядок добавления атрибутов товара в админке не сохраняется от слова совсем.

Согласен. Не так понял задачу.  Не появление атрибута  вообще, но появление атрибута у товара.  Без добавления поля в 'oc_product_attribute' никак.

Надіслати
Поділитися на інших сайтах


решил-таки заморочиться и написать мод, совсем несложно оказалось, несколько строчек кода..
Но вот совместимость с другими модулями - тут как повезет.
Теперь сортировка в товарных атрибутах работает.
Однако без пересохранения каждого товара тут не обойтись.. Чтобы прописались все порядки атрибутов у всех товаров.
 

 

 

 

тестировал на 2 версии опенкарта, но должен пройти и для 3-й по идее

product_attrubute_sort.ocmod.zip

Надіслати
Поділитися на інших сайтах

6 часов назад, chukcha сказал:

"SHOW COLUMNS FROM " . DB_PREFIX . "product_attribute LIKE 'sort_order'"

ага, точно)
вечером уже делал, откуда-то содрал и под себя переделал, не стал особо копаться. Да и полей там не 100500..

P.S. Перезалил файлик.

Надіслати
Поділитися на інших сайтах

Дополнил для удобства, чтобы можно было перетаскивать атрибуты в товаре мышкой, берем за сендвич слева и тащим, на какое место надо.
Стандартный ui-sortable

product_attrubute_sort_1_0_2.ocmod.zip

Надіслати
Поділитися на інших сайтах

1 минуту назад, chukcha сказал:

Это все хорошо, если атрибуты принадлежат одной группе

да, верно. А как учесть, что атрибут в разных группах? В админке это не берется во внимание. Просто все атрибуты скопом выводятся в товаре.
А на фронте - тут уж зависит от шаблона, как они там выводятся.
Выставить только нужную сортировку для всех групп атрибутов, их обычно не так много бывает..

Надіслати
Поділитися на інших сайтах

9 минут назад, Prooksius сказал:

их обычно не так много бывает..

Screenshot(35).thumb.png.603669f46cb46907e26ea185f50bcec1.png

Это характеристики

 

Screenshot(36).thumb.png.f9458a305dd372eb1854c81bc04ecf23.png

Это группы

 

Надіслати
Поділитися на інших сайтах

апупеть))
Тогда и заполнять все это с админки вообще не имеет смысла. Это только импорт, заливка через импорт и тут уж как программист пропишет сортировку при импорте атрибутов, так оно и будет показываться.

Надіслати
Поділитися на інших сайтах

1 минуту назад, Prooksius сказал:

апупеть))

ок, а вы видели труколор опции, например для ниток?

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.