Jump to content
покупайте без комиссии
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Разработка модуля проставления атрибутов из названия


Recommended Posts

Приветствую все заинтересовавшихся!
Собственно требуется разработка модуля для osStore 2.3. Принцип работы такой.
Модуль видит название товара, пример Мотор стеклоочистителя задний JEEP GRAND CHEROKEE (ZJ) 1993-1998 ОЕМ-51167352355 (19650-24) Под заказ 
и разбирает на основные атрибуты.
К примеру нам нужно из названия получить  1.Марка, 2.Модель, 3.Категория, 4.Под категория, 5.Модель кузова, 6.Модель двигателя, 7.год выпуска 8.Оригинальный номер
 1.Марка = JEEP
2.Модель = GRAND CHEROKEE
4.Под категория = Мотор стеклоочистителя задний
5.Модель кузова = ZJ
7.год выпуска = 1993-1998
8.Оригинальный номер = 51167352355

3.Категория этот атрибут является зависимы от 4.Под категория То есть при определении модулем атрибута 4.Под категория id=2005 дополнительно присваевается соответствующий id= 3.Категория 

Более точно в ручную создается заданный шаблон-замена так как многие поставщики могут JEEP назвать Джип, JP и т.д. Модуль на основании созданного шаблона находит в name
совпадение и проставляет необходимый ID в mysql.

Более точные вопросы по данной разработке в личку или скайп. Есть наглядный боевой пример написанный на чистом php. Как должно работать. Впринципи если сможете прикрутить данную реализацию к osstore 2.3 то тоже рассматривается.

Link to post
Share on other sites

из примера сделать модуль сравнительно несложно, но вот гарантировать что он будет работать корректно на всех товарах врядли возможно.

Link to post
Share on other sites

Корректность заключается в четком сопоставлении шаблонов, на что модулю нужно опираться при обработке name. Есть же работающий вариант полностью соответствующей задаче. И не корректность абсолютно не замечена.  
Причина почему не устраивает мало функциональность интернет магазина и административной части для которой было написано.  

Link to post
Share on other sites

Одно дело разбор готового - пример
И другое генерация

Есть товар с атрибутами (характеристиками)
тип кузова - ZJ
год выпуска NNNN-MMMM
марка
и т.д.

И генерация названия из характеристик

Но делать семантический разбор

Мотор стеклоочистителя задний JEEP GRAND CHEROKEE (ZJ) 1993-1998 ОЕМ-51167352355 (19650-24) Под заказ 

 

Стеклоочиститель задний JEEP CHEROKEE (ZJ) 1993-1998 OEM-xxxxxxx

Как в таком случае? Ведь по сути в  вашем примере нет стоп символов и количество слов изменяемое

Т.е. одного названия товара мало, чтобы построить  автомат для разбора строки




 

Link to post
Share on other sites

Для построения автомата достаточно иметь заданный шаблон названия. 
Модуль видит name, обращается к mysql таблице где хранятся в ручную созданные шаблоны 
пример:
 JEEP = ID;25
Так же может быть заданный шаблон с другими именами но одним id. По факту получаем
Джип = ID;25
Джееп = ID;25
JP = ID;25
Получается немного по дольше, так как модулю приходится для каждого name повторно лопатить целую таблицу в поисках совпадений и проставление у товара нужных ID.
Живой пример, имеем 
1006310 ед. товаров, определение атрибутов разбито на три этапа. 
Марка, Модель, Категория и подкатегория.
Время обработки Марки составляет 13 минут. +- некоторые секунды. Модель 25-30 минут. и т.д.

 

Цитата

 Т.е. одного названия товара мало, чтобы построить  автомат для разбора строки

Тогда я не понимаю почему в моем варианте все работает, а в варианте написания модуля для опенкарта не будет работать....
 

Link to post
Share on other sites

Еще раз...

Вы показали только  один вариант

Ведь, например
Стеклоочиститель Джип Jeep - уже выпадет из списка

Что у вас там работает нам неизвестно, потому как мы не владеем полной информацией.
 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.