Помощь OpenStock возможность импорта большых картинок к опциям

Тема в разделе "Opencart", создана пользователем maxy666, 18 сен 2013.

Информация :
Внимание форумчане! При создании тем, или выкладывании какой-либо информации проверьте в какой ветке форума вы находитесь! Не путайте Opencart и Opencart2. При несоблюдении данного условия выносится соответствующее наказание! И потом не говорите что вас НЕ ПРЕДУПРЕЖДАЛИ! По возможности используйте обменники mail, yandex, google, dropbox, rghost Дабы избежать просьб перезалить и проблем с рекламой!
Модераторы: ZiX
  1. maxy666

    maxy666 Постоялец

    Регистр.:
    23 июл 2012
    Сообщения:
    124
    Симпатии:
    31
    Написал простой парасер для сохранение товаров в csv и подналегшего импорта к себе в магазин и еще одну торговую площадку.
    Пользуюсь модулем для импорта CSV Product Import, у которого есть возможно импортировать опции в удобной мне форме (например: где есть картинка к опции, заливает картинку на сайт и создает опцию)

    Общий вид Excel документа(части с опциями) http://s018.radikal.ru/i528/1309/2a/33bb0acc36b5.jpg
    и также самого товара(после импорта с этого файла) http://s003.radikal.ru/i204/1309/57/04946c22465b.jpg

    Во общем ближе к проблеме....пользуюсь модулем OpenStock, и хотел бы к созданным опциями(маленьким картинкам опций http://s003.radikal.ru/i204/1309/57/04946c22465b.jpg ) импортировать еще больные картинки на которые будет выполняться переключение.

    Встроенный импортер OpenStock не понятно для меня работает
    [​IMG]
    Попробовал экспортировать опции, затем хоть что добавить, изменить и импортировать обратно. Так же хотел бы сказать что не очень понятная структура файла экпорта VID #,SKU,"Product name","Variant name",Stock,Price,Status , а именно есть ли возможность задать картинку например как в "Тест импорта через openstock > 1.jpg" ?
    PHP:
    VID #,SKU,"Product name","Variant name",Stock,Price,Status
    4,,"Пример 2","Синий > ",0,0.0000,0
    5
    ,,"Пример 2","Серый > ",0,0.0000,0
    6
    ,,"Пример 2","Желтый > ",0,0.0000,0
    7
    ,,"Пример 1","Черный > ",0,0.0000,0
    8
    ,,"Пример 1","same as the photo > ",0,0.0000,0
    9
    ,,"Пример 1","Тест импорта через openstock > 1.jpg",0,0.0000,0
    Но результата(то есть добавление опции Тест импорта через openstock к товару Пример 1 не увидел)
    Через > 1.jpg пробовал задать значение картинки опции (по которой будет ити переключение), но результата тоже нету, в товаре ничего не изменилось. Возможно я что то не так делаю...или импортировать большие картинки в OpenStock к опциям надо как то по другому.

    Пожалуйста кто имел опыт работы импорта в OpenStock, или у кого есть какие то идеи помогите пожалуйста.
     
    Последнее редактирование: 18 сен 2013
  2. Lery

    Lery

    Регистр.:
    17 май 2013
    Сообщения:
    273
    Симпатии:
    85
    на странице редактирования товара во вкладке Option Stock ручками можете добавить нужные большие фото для каждой комби-опции...
    и при выборе данной опции в карточке товара будет главное фото переключаться на то фото. что выбрали при редактировании
     
  3. maxy666

    maxy666 Постоялец

    Регистр.:
    23 июл 2012
    Сообщения:
    124
    Симпатии:
    31
    Как добавлять это понятно, вариант "ручками" не подходит". Интересует именно импорт с excel файла
     
  4. Lery

    Lery

    Регистр.:
    17 май 2013
    Сообщения:
    273
    Симпатии:
    85
    Я лишь разобралась как в экспортировать опции с картинками... а импортировать... думаю, надо писать запросы к БД, а в этом я не сильна

    файл OpenStock_export.csv выглядит так:
    PHP:
    "VID #",SKU,"Product name","Variant name",Stock,Price,Status,Image
    7246
    ,,Апрель,"1,5 спальный > Зеленый > ",5,660.0000,1,data/postel/belissimo/5.jpg
    7247
    ,,Апрель,"1,5 спальный > Розовый > ",5,660.0000,1,data/postel/belissimo/5-2.jpg
    7248
    ,,Апрель,"2 спальный > Зеленый > ",5,790.0000,1,data/postel/belissimo/5.jpg
    7249
    ,,Апрель,"2 спальный > Розовый > ",5,790.0000,1,data/postel/belissimo/5-2.jpg
    7250
    ,,Апрель,"еврокомплект > Зеленый > ",5,885.0000,1,data/postel/belissimo/5.jpg
    7251
    ,,Апрель,"еврокомплект > Розовый > ",5,885.0000,1,data/postel/belissimo/5-2.jpg
     
    Последнее редактирование: 19 сен 2013
    maxy666 нравится это.
  5. maxy666

    maxy666 Постоялец

    Регистр.:
    23 июл 2012
    Сообщения:
    124
    Симпатии:
    31
    если попробовать сделать импорт такого файла средствами OpenStock, на вкладке:
    [​IMG]
    сам пробовал сделать импорт файла немного другой структуры
    Код:
    VID #,SKU,"Product name","Variant name",Stock,Price,Status
    
    выдает что файл загружен, а результата(то есть появление картинок) не происходит(
    возможно данный способ импорта работает как то по другому, или нужна какая то другая структура файла?
    так же сильного опыта в написании таких запросов к бд не имеется. Хотел бы, если есть возможность импортировать картинки опций с помощью встроен ого импортера.
    Пожалуйста если есть возможность так импортировать, опишите что нужно делать и в каком виде подавать файлы.
     
  6. Lery

    Lery

    Регистр.:
    17 май 2013
    Сообщения:
    273
    Симпатии:
    85
    Экпорт я делаю встроенным модулем экспорт\импорт, но он лишь сохраняет файл csv с опциями и картинками... а вот импортировать с картинками не получается..
    для ипорта надо редактировать файл admin/controller/module/openstock.php
    начинается со строки 121... но мои попытки увенчались провалом... пробуйте..может у вас получится

    Для экспорта опций с картинками замените строки 86-119 в файле admin/controller/module/openstock.php на код ниже:
    PHP:
        public function export(){
            
    $this->load->model('openstock/openstock');
            
    $this->load->model('openstock/csv');
           
            
    $this->model_openstock_csv->init();
           
            
    $this->model_openstock_csv->setHeading('VID #','SKU','Product name','Variant name','Stock','Price','Status''Image');
           
            
    $products $this->model_openstock_openstock->getProductsWithOptions();
           
            if(
    $products != false)
            {
                foreach(
    $products as $product)
                {
                    foreach(
    $product['options'] as $option)
                    {
                        
    $this->model_openstock_csv->addLine(
                            
    $option['id'],
                            
    $option['sku'],
                            
    html_entity_decode($product['name']),
                            
    html_entity_decode($option['combi']),
                            
    $option['stock'],
                            
    $option['price'],
                            
    $option['active'] ,
                            
    $option['image']
                        );
                    }
                }

                
    $this->model_openstock_csv->output("D","OpenStock_export.csv");
               
                
    $this->model_openstock_csv->clear();
            }
        }
     
  7. maxy666

    maxy666 Постоялец

    Регистр.:
    23 июл 2012
    Сообщения:
    124
    Симпатии:
    31
    cпасибо подправил функцию экспорта.
    Так же пробовал разобраться с функцией импорта, но пока безуспешно...
    дописал строку
    PHP:
    `image` = '".(string)$csv_line['7']."',
    но это ничего не дало, при загрузки файла вот такое структуры:
    [​IMG]


    выдает "File was uploaded", а изменений ни каких не происходит


    PHP:
    public function import(){
            
    $this->load->language('module/openstock');
          
            if(
    $this->request->server['REQUEST_METHOD'] != 'POST')
            {
                
    $this->session->data['error'] = $this->language->get('notice_error_nofile');
            }else{
                if(
    $fp fopen($_FILES['uploadFile']['tmp_name'],'r'))
                {
                    
    $c 0;
                    while(
    $csv_line fgetcsv($fp,1024))
                    {
                        if(
    $c != 0)
                        {                      
                            
    $this->db->query("
                                UPDATE `"
    .DB_PREFIX."product_option_relation`
                                SET
                                    `stock` = '"
    .(int)$csv_line['4']."',
                                    `price` = '"
    .(float)$csv_line['5']."',
                                    `active` = '"
    .(int)$csv_line['6']."',
                                    `image` = '"
    .(string)$csv_line['7']."'
                                WHERE `id` = '"
    .(int)$csv_line['0']."'
                                LIMIT 1
                            "
    );
                        }
                      
                        
    $c++;
                    }
                  
                    
    $this->session->data['success'] = $this->language->get('notice_success');
                }else{
                    
    $this->session->data['error'] = $this->language->get('notice_error_fail');
                }
            }
          
            
    $this->redirect($this->url->link('module/openstock''token=' $this->session->data['token'], 'SSL'));
        }
    пожалуйста у кого есть решение или какие то предположение как реализовать импорт в OpenStock, помогите пожалуйста
     
  8. Lery

    Lery

    Регистр.:
    17 май 2013
    Сообщения:
    273
    Симпатии:
    85
    я так тоже пробовала, только не 7, а 2 или 3 должно быть... так как `active` = '".(int)$csv_line['6']."', а это самый крайний столбец во вкладке опции... а картинка по идее после id вторая... но это все равно не помогает...