Автор Тема: Экспорт товаров PrestaShop 1.5  (Прочитано 3800 раз)

02 Июнь 2014, 12:21:17
Ответ #15
  • Новичок
  • *
  • Сообщений: 36
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Посмотрите какой ид у русского языка и поменяте в sql запросе поле id_lang.
у русского ID - 2. Но если ставлю в запросе 2, то все поля сбиваются в выгрузке и получается каша. ((
02 Июнь 2014, 14:17:13
Ответ #16
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Продублируйте записи для 2 языков, с ид1 и ид2.
03 Июнь 2014, 10:18:17
Ответ #17
  • Новичок
  • *
  • Сообщений: 36
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Всё, разобрался. Всем еще раз огромное спасибо за помощь!
03 Июнь 2014, 12:25:12
Ответ #18
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Извините за тупость, но в админке на вкладке "Товары", над списком товаров есть кнопка экспорт. Вот по нажатию на эту кнопку какой обработчик вызывается ? Где находиться логика экспорта для этой кнопки.  В ImroptController нет ничего похожего на экспорт. Спасибо.
Наведите курсор мыши на эту кнопку и смотрите URL.
Цитировать
/index.php?controller=AdminProducts&exportproduct&token=....
При нажатии на эту кнопку будет вызван AdminProductsController. Функции импорта/экспорта в родительском контроллере AdminController.
public function processExport($text_delimiter = '"')
{

Как сделать так чтобы экспортировались все товары, потому что сейчас не все экспортируются. Если можно место в коде покажите.
Спасибо
03 Июнь 2014, 12:43:28
Ответ #19
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
/index.php?controller=AdminProducts&exportproduct&token=....
При нажатии на эту кнопку будет вызван AdminProductsController. Функции импорта/экспорта в родительском контроллере AdminController.
public function processExport($text_delimiter = '"')
{

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

Если этого мало и товаров больше, тогда нужно:
1. Или переопределить метод processExport в классе AdminControllerCore.В этом методе данные загружаются с лимитам,
$this->getList($this->context->language->id, null, null, 0, false);которые определяются в методе
public function getList($id_lang, $order_by = null, $order_way = null, $start = 0, $limit = null, $id_lang_shop = false)
{
т.е что показано на странице, то и будет экспортировано.

2.Или добавить большее число в выбор количества товаров на странице.
03 Июнь 2014, 13:30:22
Ответ #20
  • Новичок
  • *
  • Сообщений: 6
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
/index.php?controller=AdminProducts&exportproduct&token=....
При нажатии на эту кнопку будет вызван AdminProductsController. Функции импорта/экспорта в родительском контроллере AdminController.
public function processExport($text_delimiter = '"')
{

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

Если этого мало и товаров больше, тогда нужно:
1. Или переопределить метод processExport в классе AdminControllerCore.В этом методе данные загружаются с лимитам,
$this->getList($this->context->language->id, null, null, 0, false);которые определяются в методе
public function getList($id_lang, $order_by = null, $order_way = null, $start = 0, $limit = null, $id_lang_shop = false)
{
т.е что показано на странице, то и будет экспортировано.

2.Или добавить большее число в выбор количества товаров на странице.

А где можно изменить формирование содержимого csv файла - то есть мне нужно добавить в этот файл еще пару значений. Где это можно сделать ?
03 Июнь 2014, 15:23:44
Ответ #21
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
В том же классе
$this->fields_list