Перейти к содержанию
Официальный форум поддержки Simpla

Как загрузить фото поставщика через экспорт такого формата?


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

Есть поставщик у которого фото идут в таком формате

ссылка   , по идее фото открывается. Но не закачивается на сервер ко мне.

со https проблему знаю и кто то из форумчан мне уже допиливал, с других сайтов отлично грузит по https

Поэтому тут дело скорей всего в том что ссылка специфическая.

https://cdn2.randewoo.ru/img/25796/z/1

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

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

Simpla на работу с такими ссылками на изображения НЕ рассчитана. Стандартно ссылка должна иметь обычное расширение типа gif, jpeg.  Чтобы такое работало, надо переделывать скрипт ресайза по-своему...

Ссылка на сообщение
Поделиться на другие сайты
11 часов назад, phukortsin сказал:

Simpla на работу с такими ссылками на изображения НЕ рассчитана. Стандартно ссылка должна иметь обычное расширение типа gif, jpeg.  Чтобы такое работало, надо переделывать скрипт ресайза по-своему...

Сколько будет стоить?

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

А зачем скрипт ресайза переделывать?

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

А дальше скрипт ресайза уже будет работать стандартно.

Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Kosjak76 сказал:

А зачем скрипт ресайза переделывать?

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

А дальше скрипт ресайза уже будет работать стандартно.

Изображения по сути и не качаются даже. Ресайз наверное тоже стандартно не будет работать, т.к. изображения идут в формате jfif

Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Kosjak76 сказал:

А зачем скрипт ресайза переделывать?

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

А дальше скрипт ресайза уже будет работать стандартно.

а если товаров 11 тысяч, это не положит импорт?

Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, megauser сказал:

Изображения по сути и не качаются даже. Ресайз наверное тоже стандартно не будет работать, т.к. изображения идут в формате jfif

изображения идут в формате image/jpeg и отдаются nginx-ом 

при импорте проверять, есть ли у изображения тип, если нет ставить стандартно jpeg 

 

Ссылка на сообщение
Поделиться на другие сайты
3 минуты назад, alexivchenko сказал:

изображения идут в формате image/jpeg и отдаются nginx-ом 

при импорте проверять, есть ли у изображения тип, если нет ставить стандартно jpeg 

 

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

Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, megauser сказал:

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

я имею ввиду, что нужно зачистить имеющиеся записи картинок в базе после импорта, дописать в импорте проверку simpla/ajax/import.php со строки 269 PATHINFO_BASENAME на type

Ссылка на сообщение
Поделиться на другие сайты
9 минут назад, alexivchenko сказал:

я имею ввиду, что нужно зачистить имеющиеся записи картинок в базе после импорта, дописать в импорте проверку simpla/ajax/import.php со строки 269 PATHINFO_BASENAME на type

Не совсем понял, я проверяю type и дописываю ссылкам расширение? 

Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, megauser сказал:

Не совсем понял, я проверяю type и дописываю ссылкам расширение? 

ссылки не должны хранится в базе, а базе хранится только имя файла который лежит в папке ./files/original

для этого, вам нужно переписать simpla/ajax/import.php чтобы он проверял на наличие типа фала и в случае его отсутствия подставлял

Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, alexivchenko сказал:

ссылки не должны хранится в базе, а базе хранится только имя файла который лежит в папке ./files/original

для этого, вам нужно переписать simpla/ajax/import.php чтобы он проверял на наличие типа фала и в случае его отсутствия подставлял

Почему, если в файле  импорта идут ссылки, то он же не сразу скачивает изображение а по мере обращения к товару.

Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, megauser сказал:

Почему, если в файле  импорта идут ссылки, то он же не сразу скачивает изображение а по мере обращения к товару.

потому, что картинки https://cdn2.randewoo.ru/img/25796/z/1 отдаются с проверкой браузера и могут иметь как webp так и jpeg тип.

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

поэтому, импорт нужно переписывать, в частности 269 строка. на проверку типа https://www.php.net/manual/ru/function.exif-imagetype.php

Ссылка на сообщение
Поделиться на другие сайты
8 минут назад, megauser сказал:

Почему, если в файле  импорта идут ссылки, то он же не сразу скачивает изображение а по мере обращения к товару.

по мере обращения ресайз нарезает из файла который находится в ./files/original и в базе прописано его имя с типом

Ссылка на сообщение
Поделиться на другие сайты
4 часа назад, Kosjak76 сказал:

А зачем скрипт ресайза переделывать?

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

А дальше скрипт ресайза уже будет работать стандартно.

Во-первых, у ТС явно нигде не сказано ничего про импорт.

Во-вторых, ссылка на изображение со стороннего сайта может возникает как при импорте, так и при редактировании товара при использовании функционала 'загрузить из интернета'.

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

Ссылка на сообщение
Поделиться на другие сайты
В 23.08.2021 в 12:03, alexivchenko сказал:

потому, что картинки https://cdn2.randewoo.ru/img/25796/z/1 отдаются с проверкой браузера и могут иметь как webp так и jpeg тип.

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

поэтому, импорт нужно переписывать, в частности 269 строка. на проверку типа https://www.php.net/manual/ru/function.exif-imagetype.php

Так у меня при импорте ссылка

https://cdn2.randewoo.ru/img/25796/z/1

Сама картинка там jfif формата

Получается я определяю расширение и добавляю

https://cdn2.randewoo.ru/img/25796/z/1.jfif

Но тогда получается что изображение просто не скачается, т.к. сервер так не отдает. Получается фото все качать придется? а обычным функционалом они не будут подтягиваться постепенно?

 

Ссылка на сообщение
Поделиться на другие сайты
9 минут назад, megauser сказал:

Так у меня при импорте ссылка

https://cdn2.randewoo.ru/img/25796/z/1

Сама картинка там jfif формата

Получается я определяю расширение и добавляю

https://cdn2.randewoo.ru/img/25796/z/1.jfif

Но тогда получается что изображение просто не скачается, т.к. сервер так не отдает. Получается фото все качать придется? а обычным функционалом они не будут подтягиваться постепенно?

 

нет, после нескольких проб, решение либо качать в ручную или писать парсер с заголовками браузера который будет ожидать jpeg/jpg/webp собирать все в csv или напрямую через апи кидать.

стандартный simpla resize не умеет работать с форматом таких изображений  

Ссылка на сообщение
Поделиться на другие сайты
1 час назад, alexivchenko сказал:

нет, после нескольких проб, решение либо качать в ручную или писать парсер с заголовками браузера который будет ожидать jpeg/jpg/webp собирать все в csv или напрямую через апи кидать.

стандартный simpla resize не умеет работать с форматом таких изображений  

Мде, это печально...

Ссылка на сообщение
Поделиться на другие сайты
1 час назад, megauser сказал:

Мде, это печально...

ничего печального, просто нужно переписать в api/image.php функцию download_image и resize/resize.php 

 

Изменено пользователем alexivchenko
Ссылка на сообщение
Поделиться на другие сайты
16 часов назад, Noxter сказал:

Во базар развели!

Юзай file_get_contents и file_put_contents чтобы сохранить фото на сервере.

Особо ничего не развели, обычные обсуждения.

А вопрос не в том, чтобы "сохранить фото на сервере", а чтобы полностью правильно обрабатывать картинки с нестандартными для Simpla ссылками. И судя по тому, что в теме специалисты в основном дают общие советы, для решения надо написать код довольно большой и не совсем простой...

А один спец здесь в теме сначала сказал "поэтому, импорт нужно переписывать". А чуть позже заговорил  совсем иначе "нужно переписать в api/image.php функцию download_image и resize/resize.php". Думаю, если у него вдруг дойдет до дела, то быстро выяснится, что требуется еще пару функций переписать...

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

Достаточно немного переписать функцию download_image дабы подобные картинки по ссылкам сохранить на сервере, и уже при открытии товара корректно выполнилась функция обрезки.

Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, phukortsin сказал:

Особо ничего не развели, обычные обсуждения.

А вопрос не в том, чтобы "сохранить фото на сервере", а чтобы полностью правильно обрабатывать картинки с нестандартными для Simpla ссылками. И судя по тому, что в теме специалисты в основном дают общие советы, для решения надо написать код довольно большой и не совсем простой...

А один спец здесь в теме сначала сказал "поэтому, импорт нужно переписывать". А чуть позже заговорил  совсем иначе "нужно переписать в api/image.php функцию download_image и resize/resize.php". Думаю, если у него вдруг дойдет до дела, то быстро выяснится, что требуется еще пару функций переписать...

я как раз вчера уже переписал в api/image.php функцию download_image, картинки сохраняются. правда код колхозный ? думаю как его лучше написать

Ссылка на сообщение
Поделиться на другие сайты
21 минуту назад, alexivchenko сказал:

я как раз вчера уже переписал в api/image.php функцию download_image, картинки сохраняются. правда код колхозный ? думаю как его лучше написать

Экстрасенсы в отпуске

Ссылка на сообщение
Поделиться на другие сайты
55 минут назад, alexivchenko сказал:

я как раз вчера уже переписал в api/image.php функцию download_image, картинки сохраняются. правда код колхозный ? думаю как его лучше написать

Если можно, выкладывайте код. 

"код колхозный" - этот второстепенный недостаток можно потерпеть, если все работает верно...

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

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

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

Загрузка...
×
×
  • Создать...