Перейти к содержанию
cenac

Проблема с модулем Export/import

Рекомендуемые сообщения

Добрый день!

Суть проблемы. Сделав дополнительные поля для продукта. Не могу добиться их правильно выгрузки-загрузки.

Выгружаются в xls правильно а вот при загрузке обратно вся база стирается.

Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Модуль Export/import каждый раз все перезаписывает по новой,поэтому в файле который импортируете должны быть абсолютно все товары с сайта и новые и старые.

А вот модуль который просто добавляет товары никто не хочет сделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Модуль Export/import каждый раз все перезаписывает по новой,поэтому в файле который импортируете должны быть абсолютно все товары с сайта и новые и старые.

А вот модуль который просто добавляет товары никто не хочет сделать.

Спасибо за ответ. Но дело было немного в другом. Я в модуль export.php добавлял свои переменные. И вот они не хотели по новой загружаться. Уже разобрался.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ну поделилесь бы со всеми:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

История такая. Я добавил дополнительные поля продукта по инструкции https://opencartforum.com/topic/156-дополнительные-поля-продукта/.

И возникла проблема их выгрузки в exel и обратной загрузки.

Допустим надо добавить переменную 'year'

Открываем /admin/model/tool/export.php

1. Строка 284. В следующую строчку после $sort_order = $product[40]; вставляем $year = $product[41];

2. Строка 294. "`tax_class_id`,`viewed`,`length`,`width`, и т.д. после значения 'cost' вставляем 'year'

3. Строка 301. "$taxClassId,$viewed,$length,$width,$height, и т.д. после значения 'cost' вставляем '$year'

4. Строка 433. После строки $cost = isset($row[37]) ? $row[37] : "0.00"; вставляем строку $year = isset($row[38]) ? $row[38] : "";

5. Строка 491. После строки $product[40] = $sort_order; вставляем строку $product[41] = $year;

6. Строка 1066. В строке ( "product_id", "name", "categories", "sku", и т.д. после "cost" вставляем "year"

7. Строка 1346. После $worksheet->setColumn($j,$j++,max(strlen('price'),10)+1,$priceFormat); вставляем $worksheet->setColumn($j,$j++,max(strlen('year'),8)+1,$textFormat);

8. Строка 1394. После $worksheet->writeString( $i, $j++, 'cost', $boxFormat ); вставляем $worksheet->writeString( $i, $j++, 'year', $boxFormat );

9. Строка 1441. После $query .= " p.cost, "; вставляем $query .= " p.year, ";

10. Строка 1522. После $worksheet->write( $i, $j++, $row['cost'], $priceFormat ); вставляем $worksheet->write( $i, $j++, $row['year], $textFormat );

Жирным выделил места на которые надо обратить внимание.

После этого работает выгрузка и загрузка дополнительный полей продукта.

Если нужно больше одного поля, то делается по аналогии сколько угодно.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.