Я импортирую каталог товаров в магазин Prestashop, но есть проблема с поврежденным URL-адресом изображения, потому что товар показывается с изображением по умолчанию со знаком запроса.
Моя идея состоит в том, чтобы пропустите эти URL и не используйте неизвестное изображение по умолчанию. Есть идеи для этого?
Это изображение по умолчанию, используемое, когда URL-адрес изображения не работает
Это продукт с некоторыми изображениями по умолчанию из-за потерянных изображений
Изображения продукта перечислены в ps_image
Таблица. Вы должны сделать скрипт, который удаляет все изображения этой таблицы, которых нет в /img/p/
папка.
Вы могли бы изменить размер изображения в меню настроек изображений backffoffice, но я не уверен, что это чистая база данных.
Удачи.
Спасибо за помощь с вашей помощью. Я мог бы сделать этот сценарий, но это решение не будет полезным, потому что я импортирую каталог каждый час.
Я нашел решение, и оно добавляло некоторые изменения в модуль импорта, так что теперь модуль перед импортом URL проверяет file_exists()
и вместо того, чтобы бросить новое исключение, будет do unset()
для этого изображения URL, так что с этим достаточно для моего решения. Спасибо всем.
Это код:
// Get images real path, and check exists
foreach ($images as $key => $img) {
/*if (preg_match('/:\/\//', $images[$key]->value)) {
continue;
}*/
$url = $images[$key]->value;
$filename = explode('=',$url)[1];
$images[$key]->value = _PS_ROOT_DIR_.'/testimg/'.$filename.'.jpg';
if (!file_exists($images[$key]->value))
{
unset($images[$key]);
//throw new Exception("File {$images[$key]->value} not found.");
}
}