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

Модуль Total Import Pro Помогите с атрибутами


siniy

Recommended Posts

Модуль Total Import Pro - до недавнего времни это был единственный модуль,который мог импортировать атрибуты, сейчас уже есть бесплатный екселевский, который вроде тоже работает с атрибутами, но там проблема, что нет добавления и обновления базы... в этом плане Total Import до сих пор выигрывает.

Обзавелся этим модулем, изучаю... были проблемы с русским языком, решил.

Теперь не могу в файле импорта правильно задать атрибуты, чтобы модуль не создавал одноименную группу атрибутов, а использовал существующую.

Т.е. например у меня есть группа атрибутов под названием Внешний вид, в ней есть атрибут Цвет.

Если я в модуле указываю атрибут Цвет, то он создает одноименную группу атрибутов Цвет, а мне этого не нужно, почему он не использует созданную мной группу Внешний вид? Как прописать чтобы он не создавал эти дубли?

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

А вообще модуль классный, очень гибкий, все может.

если кто подскажет как решить этот вопрос, буду благодарен

ася 203-410-102

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


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

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


  • 9 months later...

столкнулся с аналогичной проблемой.

поиск привел сюда.

но как обычно "вопрос решен, тему можно закрыть..."

уважаемый siniy, можно ответ разработчика выложить?

Или намекните хотя бы как вы проблему решили.

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

Выложу свое решение проблемы.

Итак имеем исходную таблицу:
http://prntscr.com/10v6bv

В виде атрибутов будут импортированы: Высота, Ширина, Глубина, Вес, Механизм, Корпус, Гарантия

Создадим сначала через админку нужную группу ("Характеристики")
и сами атрибуты.

создаем в админке вручную (1 раз) сначала группу атрибутов:
http://prntscr.com/10v4iy
далее создаем атрибуты:

http://prntscr.com/10v4he
разумеется, что делаем это один раз.

читаем в первоисточнике:
------------

Attribute:  Product attributes can be imported—reference the attribute’s name (e.g., from the example in the “XML Format”, enter “type” without quotation marks). The field name will be used for the Attribute name, and the value in the field for each product will be used for the Attribute value.

If you wish to import a particular attribute structure you can do this by using a ':' separated list in your attribute field. This is then imported as '<group_name>:<attribute_name>:<attribute_value>' and creates the appropriate attribute group, attribute name and attribute value.


-----------------
т. е. чтобы корректно импортировался атрибут "Механизм" без создания новой группы "Механизм" и нового атрибута в ней "Механизм", можно в исходной таблице в каждом поле столбца перед значением добавить "Характеристики:Механизм:" чтобы получить такие поля для столбца "Механизм":
 

 

Характеристики:Механизм:кварцевый
Характеристики:Механизм:механический
Характеристики:Механизм:механический
 

 



...

Но можно этого и не делать, а воспользоваться возможностью автоматически преобразовать все поля конкретного столбца с помощью Total Import Pro без изменения исходного файла.  А преобразование сведется к добавлению в начало каждой ячейки:
 

 

Характеристики:Механизм:
 

 



--------------
Соответственно для каждого атрибута делаем аналогично.

а далее при импорте (добавлении или обновлении товаров) происходит добавление нужных атрибутов в нужные нам группы :
Я настроил это таким образом:
http://prntscr.com/10v2i4

Т. е. к каждому полю столбца "Механизм" будет добавлено "Характеристики:Механизм:" и поле будет АВТОМАТИЧЕСКИ преобразовано к виду:
Характеристики:Механизм:кварцевый

т.е.

 

<Группа атрибутов>:<название атрибута>:<значение атрибута>
 

 


Это видно на следующем шаге:
http://prntscr.com/10v343

Разумеется, что можно изначально прописать в исходной таблице это: <Группа атрибутов>:<название атрибута>:<значение атрибута>
но я использовал более простой и универсальный способ, изложенный мною выше.

post-7087-0-27707100-1366132888_thumb.png

post-7087-0-52512200-1366132900_thumb.png

post-7087-0-84794600-1366132914_thumb.png

post-7087-0-14798400-1366132925_thumb.png

post-7087-0-11189200-1366132932_thumb.png

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

Ежели кому помог, то не стесняйтесь говорить "СПАСИБО" в виде ПЛЮСА (зеленая стрелочка) к репутации.

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

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

я свой модуль не обновляю, так как у меня сделана правка под использование русского языка, + добавлено использование дополнительного поля... поэтому обновляться нельзя или опять делать эти доработки... а я не программист, поэтому для меня это сложно будет..

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


я свой модуль не обновляю, так как у меня сделана правка под использование русского языка,

 

мне тоже пришлось править модуль, иначе на ocStore он работает с ошибкой. Все связано с тем, что в таблице товаров (и не только) ocStore использует дополнительные поля seo_title seo_h1. а в оригинальном opencart таких полей нет.

 

Модуль замечательный, стоит своих денег. ничего аналогичного по функционалу и удобству не встречал. хотя перепробовал несколько вариантов.  Но с обновлением модуля, действительно, неудобство - это каждый раз нужно переделывать его под ocStore, либо отказаться от ocStore и работать только с оригинальным Opencart.

 

но с русским языком (кириллицей) в данной версии модуля (последней на сегодняшний день) проблем нету.

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

  • 10 months later...

мне тоже пришлось править модуль, иначе на ocStore он работает с ошибкой. Все связано с тем, что в таблице товаров (и не только) ocStore использует дополнительные поля seo_title seo_h1. а в оригинальном opencart таких полей нет.

Приветствую!

Как получилось решить проблему импорта?

У меня из-за доп полей отказывается импортировать товары.

Notice: Undefined index: seo_title in .............\admin\model\catalog\category.php on line 13

Notice: Undefined index: seo_h1 in ...............\admin\model\catalog\category.php on line 13

 

Буду благодарен.

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


  • 7 months later...
  • 1 year later...

Ежели кому помог, то не стесняйтесь говорить "СПАСИБО" в виде ПЛЮСА (зеленая стрелочка) к репутации.

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

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

Только не могу победить одну проблему. Если в названии Атрибута есть двоеточие ":" то что делать ?

Если атрибут называется "Вес:" ? Двойное двоеточие "::" не канает :(

Сталкивался может кто ?

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


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

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

Только не могу победить одну проблему. Если в названии Атрибута есть двоеточие ":" то что делать ?

Если атрибут называется "Вес:" ? Двойное двоеточие "::" не канает :(

Сталкивался может кто ?

Решил сам - обманув ТоталИмпортПро :)

Заменил двоеточие кодом ":"

Сделал так:

Характеристики:Вес::2 кг

В итоге название атрибута показывается как "Вес:"

Может пригодится кому ;)

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


  • 1 month later...

Решил сам - обманув ТоталИмпортПро :)

Заменил двоеточие кодом ":"

Сделал так:

Характеристики:Вес::2 кг

В итоге название атрибута показывается как "Вес:"

Может пригодится кому ;)

Зачем? Если в модуле реализована поиск и замена в тексте! Искать двоеточие в колонке и заменять на пробел!

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


  • 1 month later...

А как для Opencart 2 в Total import pro должны прописаны атрибуты??

если у меня в колонке прописано так Характеристики:Механизм:механический то импортирует корректно 

а вот если я хочу несколько атрибутов импортировать и прописую 

Характеристики:Механизм:механический1

Характеристики:Механизм:механический2

Характеристики:Механизм:механический3

то получается так http://prntscr.com/ajcg7n  кто подскажет в чем проблема?

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


  • 3 weeks later...

мне тоже пришлось править модуль, иначе на ocStore он работает с ошибкой. Все связано с тем, что в таблице товаров (и не только) ocStore использует дополнительные поля seo_title seo_h1. а в оригинальном opencart таких полей нет.

приветствую

подскажите решение этой проблемы

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


  • 4 weeks later...

Здравствуйте, а кто решил проблему генерации чпу товара, когда в названии есть русский язык?
у меня он все ---------- заменяет.
к тому же не переводит в нижний регистр (эту проблему решает seopro при выводе, но все-таки?)

я так понимаю, что можно добавить кусок кода, взятый отсюда http://www.zawebis.com/php-i-sql/cms/opencart/avtozapolnenie-pola-seo-url-v-opencart.html
но куда его вставить, в какой файл? помогите пожалуйста, думаю, не я один с русскими товарами.

модуль генерации seo не использую, так как уже проиндексированы старые товары и url там сделан не им.


сделал решение сам, публикую, может кому пригодится :)

 

нашел код в файле /admin/model/tool/total_import.php

	public function makeSeoKeyword($text='') {
		//Title to friendly URL conversion
		$text = trim($text);
		$urltitle=preg_replace('/[^a-z0-9]/i',' ', $text);
		$newurltitle=str_replace(" ","-",$urltitle);
		$seo_keyword=$newurltitle; // Final URL
		
		//if the alias is taken, set it to blank
		if($this->checkUrlAlias($seo_keyword)) {
			$seo_keyword = '';
		}	
		return $seo_keyword;
	}

вставил вместо него модифицированный:

public function makeSeoKeyword($text='') {
		//Title to friendly URL conversion
		
		$tr = array ("А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D","Е"=>"E","Ж"=>"J","З"=>"Z","И"=>"I","Й"=>"Y","К"=>"K","Л"=>"L",
                 "М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R","С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"H","Ц"=>"TS","Ч"=>"CH",
                 "Ш"=>"SH","Щ"=>"SCH","Ъ"=>"","Ы"=>"YI","Ь"=>"","Э"=>"E","Ю"=>"YU","Я"=>"YA","а"=>"a","б"=>"b","в"=>"v","г"=>"g",
                 "д"=>"d","е"=>"e","ж"=>"j","з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l","м"=>"m","н"=>"n","о"=>"o","п"=>"p",
                 "р"=>"r","с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h","ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y","ы"=>"yi",
                 "ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya",")" => "","(" => "");
                 
                 

               
      $text  = strtr($text ,$tr);
      $text = mb_strtolower($text); //перевели в нижний регистр
      $text = trim($text);
      $urltitle =$text;
      $urltitle=preg_replace('/[^a-z0-9]/i',' ', $urltitle);         
		$newurltitle=str_replace(" ","-",$urltitle);
		$seo_keyword=$newurltitle; // Final URL
		
		//if the alias is taken, set it to blank
		if($this->checkUrlAlias($seo_keyword)) {
			$seo_keyword = '';
		}	
		return $seo_keyword;
	} 

теперь русские названия хорошо транслитит и переводит в нижний регистр

Змінено користувачем Kventin
Надіслати
Поділитися на інших сайтах


  • 3 weeks later...
  • 9 months later...

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

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

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

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

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

Вхід

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

Вхід зараз
×
×
  • Створити...

Important Information

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