Импорт фото в галерею Minishop2

Добрый день.
Пытаюсь выполнить импорт товаров из yml. Товары импортируются, создаются, обновляются отлично. Но вот фото никак не хочет импортироваться.
Пользуюсь этим скриптом:
$response = $this->modx->runProcessor('gallery/upload',
                        array(
                            'id' => $object['id'], 
                            'file' => $image,
                        ),
                    array('processors_path' => MODX_CORE_PATH.'components/minishop2/processors/mgr/')
                    );
					// Вывод результата работы процессора
					if ($response->isError()) {
						print_r($response->getAllErrors());
					}
					else {
						print_r($response->response);
					}
                }
Но в результате вижу такой ответ:
Array
(
[0] => Передан пустой файл
)
Array
(
[0] => ms2_gallery_err_no_product
)
Подскажите, где моя ошибка…
Андрей
07 марта 2017, 12:49
modx.pro
1
2 425
0

Комментарии: 2

Алексей Шумаев
31 июля 2017, 17:03
0
Изображения сначала нужно загрузить.
Примерно так:
$dir = 'temp/';
	$file = ''; // здесь собственно файл, полученный например curl'ом по ссылке из xml
        $image = $dir.basename('путь к файлу в xml');
        $fp = fopen($newfile, 'w');
        fwrite($fp, $file);
        fclose($fp);
                
        if(is_file($newfile)) {
             $response = $this->modx->runProcessor('gallery/upload',
    			array('id' => $resID, 'name' => $product['pagetitle'], 'file' => $newfile),
    			array('processors_path' => $this->corePath.'components/minishop2/processors/mgr/')
    		);
    		if ($response->isError()) {
    			$this->modx->log(1, 'Ошибка загрузки изображения:'.print_r($response->getAllErrors(), 1));
    		}
    		unlink($newfile);
        }
    Алексей Шумаев
    31 июля 2017, 17:04
    0
    Опа, вопрос-то устарел ) На дату не посмотрел…
    Ну да ладно, вдруг кому понадобиться.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2